蘑菇街 java岗社招面试经验分享
问题:
1、聊10分钟项目
2、让你实现生产者消费者,类似阻塞队列那种的,你怎么实现?object类的notify和
wait+while循环
3、redis的常用数据结构以及使用场景。
4、mysql的是底层什么数据结构?为什么要B+树?
5、线程池,为什么要用线程池?满了怎么办?如果我想换个方式,改为满了之后先扩充最
大核心数呢?
6、双亲委派机制的过程?为什么要这个双亲委派机制?
7、netty?
8、问到了分表分库,假设有好多订单,现在分表分库了,我如何迅速找到我要的一堆数据。
9. Map接口有哪些实现类
10. 讲一下LinkedHashMap?
11. 如何得到一个线程安全的Map?
·12.Java中有哪些锁?讲一下synchronized和ReentrantLock 的区别?
13. Spring AOP是怎么实现的?
14.JDK动态代理和CGLIB有什么区别?既然有没有实现接口都可以用CGLIB,为什么Spring
还要使用JDK动态代理?
15· Spring AOP不能对哪些类进行增强?(没有被Spring管理的类,当时没想出来)
16· Spring是怎么解决循环依赖的?多例对象之间的循环依赖?单例和多例之间的循环依
赖?
17· MyBatis 中$和#的区别?既然$不安全,为什么还需要$,什么时候会用到它
18· MySQL的ACID特性分别是怎么实现的?
19· MySQL的事务隔离级别是怎么实现的?
18·用过什么缓存框架?用过什么RPC框架?用过什么消息队列?
19·除了Java自带的序列化之外,你还了解哪些序列化框架?
· 项目
差不多就这些了,其实问题还是挺多的。
#蘑菇街##面经##社招##java工程师#