三面大概九十分钟,问的东西很全面,需要做充足准备,就是除了概念以外问的有点懵逼了(呜呜呜~)。回来之后把这些题目做了一个分类并整理出答案(强迫症的我~狂补知识~)分为spring,jvm,mybatis,并发编程等,接下来分享一下我的这阿里面试的面经+一些我的学习笔记。
注意注意:需要小编整理的spring,jvm,mybatis,并发编程等,面试答案、学习笔记、思维脑图(xmind)
阿里关于spring面试问题:
- 请解释下spring框架中的Ioc?
- BeanFactory 和ApplicationContext有什么区别?
- spring有哪几种配置方式?
- 如何用基于XML配置的方式配置spring?
- 如何用基于java配置的方法配置spring?
- 怎么用注解的方式配置spring?
- 请解释spring bean的生命周期?
- spring bean的作用域之间有什么区别?
spring学习思维导图(xmind):
spring学习笔记:
从spring最基础的特点分析,讲spring将会有机会考到的知识点都整理在了一起,可以说是
- Spring 特点
- Spring 核心组件
- Spring 常用模块
- Spring 主要包
- Spring 常用注解
- Spring 第三方结合
- Spring IOC 原理
- Spring APO 原理
- Spring MVC 原理
- Spring Boot 原理
- JPA 原理
- Mybatis 缓存
- Tomcat 架构
阿里关于JVM面试的问题:
- java类加载过程
- 描述一下jvm加载class文件的原理机制?
- GC是什么?为什么要有GC?
- 如何判断一个对象是否存活?
- 垃圾回收的优点和原理。并考虑两种回收机制。
- java中会存在内存泄漏吗,请简单阐述
- JVM的永久带中会发生垃圾回收吗?
- java中垃圾收集的方法有哪些
JVM学习思维导图(xmind)
JVM核心知识整理:
- 线程
- JVM 内存区域
- JVM 运行时内存
- 垃圾回收与算法
- JAVA 四中引用类型
- GC 分代收集算法 VS 分区收集算法
- GC 垃圾收集器
- JAVA IO/NIO
- JVM 类加载机制
阿里关于mybatis面试的问题:
- MyBatis 与 Hibernate 有哪些不同?
- Mybatis 是如何进行分页的?分页插件的原理是什么?
- Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?
- 如何执行批量插入?
- 如何获取自动生成的(主)键值?
- Mybatis 动态 sql 有什么用?执行原理?有哪些动态 sql?
- 为什么说 Mybatis 是半自动 ORM 映射工具?它与全自动的区别在哪里?
- MyBatis 实现一对多有几种方式,怎么操作的?
mybatis学习思维导图(xmind)
阿里关于并发编程面试问题:
- Synchronized用过吗,其原理是什么?
- 什么是重入锁,为什么说Synchronized是可重入锁?
- JVM对java的原生锁做了哪些优化
- 为什么说Synchronized是非公平锁?
- 什么是锁消除和锁粗化?
- 为什么说Synchronized是一个悲观锁?乐观锁的实现原理又是什么?
- 那么请谈谈AQS框架是怎么回事?
- ReentrantLock是如何实现可重入性的?
并发编程学习思维导图(xmind):
总结:
自从在阿里碰壁之后,花了一个月的时间学习梳理了这些知识点,准备来日再战,除了jvm,mybatis,并发编程之外,还整理了有java基础,微服务,Kafka等知识点的笔记。以及1500道大厂面试题的整理。
面试整体以及思维导图获取方式