
Arthur解析系列之Spring
文章平均质量分 64
从概念、使用场景、底层实现、源码应用、源码解析,来讲解整个技术生命流程。
愿好
科技推动人类物质文明发展,人文推动人类精神文明发展。
展开
-
谈谈你对Spring 事务的理解
本质: Spring事务是基于数据库事务的隔离级别的封装,并定义了事务传播行为,可以在不同的项目、不同的操作中再次对事务的传播行为和隔离级别进行策略控制。 所以,首先得先明确数据库中事务概念、特性、并发问题和隔离级别。 参照文章:事务的概念、特性和隔离级别以及他们解决了什么问题 Spring事务传播行为是spring为了业务层之间调用事务的关系而提出的,即数据库层面是不存在事务传播行为的。 Spring定义的传播属性和隔离级别实现: Spring中存在7种传播属性: 如果存在当前事务可分4类,原创 2021-08-25 14:26:17 · 1239 阅读 · 0 评论 -
谈谈你对spring循环依赖的理解
概念: 循环依赖其实就是对象循环引用,也就是两个或以上的Bean互相持有对方,最终形成闭环。比如A依赖于B,B依赖于C,C又依赖于A; Spring 中循环依赖场景有: 构造器的循环依赖(构造器注入) 成员属性的循环依赖(set注入) 对于多例 prototype 原型 Bean 的初始化过程中,不论是构造器参数循环依赖,还是通过set方法产生循环依赖,spring都是直接报错处理。 Spring的循环依赖的解决方式基于Java的引用传递,单例Bean使用构造器参数产生的循环依赖问题,构造器是在获原创 2021-08-25 09:41:57 · 260 阅读 · 0 评论 -
谈谈你对AOP的理解
概念: AOP (面向切面编程):即面向规则编程,找出多个类中有一定规律的代码,开发时拆开,运行时再合并。本质:解耦,专人做专事。 应用场景: 1、用于日志打印 2、用于全局异常处理拦截 3、返回值统一处理 4、多数据源切换 AOP底层实现原理是动态代理。 spring默认使用jdk动态代理,如果没有实现接口,就使用cglib代理; JDK动态代理:利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。 流程: 1、通过实现 Invocatio原创 2021-08-24 21:03:06 · 3062 阅读 · 0 评论 -
Springbean生命周期
简单点说就是:bean的实例化–>bean的属性赋值–>bean的初始化–>bean的销毁(包含bean的使用)原创 2021-08-24 20:51:20 · 228 阅读 · 0 评论