面试题整理


一、Java基础

  • ThreadLocal为什么会发生内存泄露

二、Spring

  • IOC(一定会生成代理吗、循环依赖)
  • 三级缓存的作用分别是什么
  • 循环依赖为什么可以解决set注入,但无法解决构造器注入(doCreateBean中先createBeanInstance进行实例化,再addSingletonFactory放入的三级缓存,再populateBean进行set注入)
  • AOP(在扫描bean的时候如何织入的)
  • 事务如何实现(事务失效场景)
  • Byname和ByType区别
  • Spring的生命周期

三、Springboot

  • auto-configure原理
  • 启动流程

四、Dubbo

  • SPI
  • 服务注册与发现

五、多线程

  • ThreadPoolExecutor的参数以及作用
  • submit和execute的源码以及区别
  • AQS
  • ReentrantLock和ReadwriteLock

六、Mysql

  • 常见数据库引擎
  • 事务如何实现的(binLog undoLog redoLog MVCC)
  • 索引原理(B+树)
  • 什么时候不走索引(最左匹配等)
  • 覆盖索引
  • 隔离级别

七、JVM

  • 双亲委派的机制、作用、什么时候需要打破
  • 常见垃圾回收机制
  • 运行区域(五个)
  • 垃圾回收区域(老年代,新生代)如何进行回收的
  • FullGC和YoungGC

八、集合

  • 线程安全的list(三种)
  • COW的实现方式,为什么线程安全
  • hashSet为什么能去重(为什么要同时重写hashcode和equals方法)

九、数据结构

  • hashMap
  • concurrentHashMap

十、非关系型

  • Match、filter、term、bool等区别
  • 倒排索引原理
  • 缓存穿透、雪崩、缓存击穿

十一、Netty

  • 什么是沾包、拆包以及如何解决的
  • epoll io多路复用
  • 零拷贝、是否是单线程

十一、Http

  • 三握四挥
  • 网络分层
  • 长连接

十一、MyBatis

  • 三级缓存

十二、Zookeeper

  • 选举机制(myid、zxid,取zxid最大的,flower、leader、observer、looking)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值