- 博客(11)
- 收藏
- 关注
原创 spring是如何解决循环依赖的
1.什么是循环依赖?所谓的循环依赖是指,A 依赖 B,B 又依赖 A,它们之间形成了循环依赖。或者是 A 依赖 B,B 依赖 C,C 又依赖 A。spring是通过三级缓存来解决循环依赖的为什么需要二级缓存?一级缓存和二级缓存相比:二级缓存主要是为了分离成熟Bean和纯净Bean(未注入属性)的存放, 防止多线程中在Bean还未创建完成时读取到的Bean时不完整的。所以也是为了保证我们getBean是完整最终的Bean,不会出现不完整的情况。一二三级缓存下二级缓存的意义:二级缓存为了存储 三
2022-05-10 23:30:15
406
原创 2022java面试(未附答案)
java面试中遇到的问题,用于自省。待补充。。。一、线程1、单线程为什么还能乱序2、内存屏障到底是什么3、用两个线程,一个输出字母,一个输出数字,交替输出1A2B3C4D5E6Z4、HotSpot实现上偷懒的地方5、并发模型有比java更先进的6、DCL到底需不需要volatile7、锁在java中如何实现8、悲观锁、乐观锁、互斥锁、共享锁、读写锁、分段锁概念详解10、详解自旋锁11、java中的锁优化,锁升级详解二、jvm1、对象在内存中的存储布局2、对象头具体包括什么3、对
2022-05-02 16:46:03
1134
原创 spring事务管理是如何实现的?
spring的事务是由aop实现的,首先要生成具体的代理对象,然后按照aop的整套流程来执行具体的操作逻辑,正常情况下要通过通知来完成核心功能,但是事务不是通过通知来完成的,而是通过一个TransactionIntercaptor来实现的,然后调用invoke来实现具体的逻辑。分:1、先做准备工作,解析各个方法上事务相关的属性,根据具体的属性来判断是否开始新事务2、当需要开启的时候,获取数据库连接,关闭自动提交功能,开启事务。3、 执行具体的sql逻辑操作4、在操作过程中,如果执行失败了,那么会通
2022-04-20 23:26:02
3249
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人