一面 4.15
- 自我介绍
- 项目职责介绍?项目里Redis是怎么使用的?
- Redis:过期时间怎么设置的,用什么命令?过期的key如何清除(Redis过期key的清除策略)?Redis常见的数据结构及应用场景?Redis为什么快?Redis的key默认为多大?缓存穿透、缓存击穿和缓存雪崩和解决办法?布隆过滤器的原理?
- Java基础:如果要存金额得话,用什么数据类型?为什么不能用float?自动拆箱和装箱介绍一下?包装类常量池技术?
- 集合框架:HashMap的原理介绍一下?如何解决HashMap的线程不安全问题?ConcurrentHashMap的原理?HashMap和TreeMap的区别?
- JVM:GC的作用?垃圾回收算法介绍?什么样的对象会在老年代?
- MySQL:InnoDB和MyISAM的区别?MySQL可以从哪些方面进行优化?为什么使用B+树作为索引的数据结构,为什么不用Hash或者二叉树?身份证号、姓名、性别哪个适合作为索引、为什么?索引不会被命中的情况有哪些?
- MyBatis:介绍一下MyBatis的原理?MyBatis的模糊查询怎么做?#{}和${}的区别?
- Spring:Spring常用的注解有哪些?@Autowire和@Resource的区别?
- 算法:给定n个空瓶子,每三个瓶子换一瓶饮料,喝完可以继续换,请问最多可以换多少瓶饮料?
二面 4.21
- 自我介绍
- 项目介绍
- Java创建线程的方式有哪些
- Java泛型的实现原理
- 说说对反射的了解?哪些地方使用了反射?MyBatis怎么使用的反射?
- MyBatis怎么获取主键值?怎么批量获取主键值?
- 介绍一下动态代理?JDK动态代理怎么实现?
- 介绍一下Java内存模型
- 说一下你为什么想做开发?
- 说一下你的职业规划?