Spring事务,Bean生命周期

一、事务相关:

1.Spring事务基于Spring AOP切面编程;

2.AOP基于代理模式,得到需要开启事务的代码的代理对象;

3.而没有开启事务的Service方法里调用了开启事务 @Transactional 的方法时,整个代码是不会开启事务的,原理还是代理模式插入事务的依据是最外层的注解;

4.对于上面3,反之,则可以,这是事务的传播机制。

二、Bean生命周期:

2.1生命周期图:

出自:《精通Spring 4.x》

2.2不同级别的接口分类:

1.Bean本身的方法:Bean的构造函数、Setter方法、init-method方法、destroy-method;

2.Bean级接口方法:BeanNameAware、BeanFactoryAware、InitializingBean等接口的方法,实现了这些接口的Bean才会调用这些实现的方法;

3.容器级接口方法:InstantiationAwareBeanPostProcessor接口和BeanPostProcessor接口,就是上图带★的说明,实现了这些接口的方法,每当有Bean进行操作时就会被调用;

4.后工厂处理接口方法:这个包括了AspectJWeavingEnabler、ConfigurationClassPostProcessor、CustomAutowireConfigurer等等非常有用的工厂后处理器接口的方法。工厂后处理器也是容器级的,在应用上下文装配配置文件之后立即调用。

猜你喜欢

转载自www.cnblogs.com/lcmlyj/p/10357365.html
今日推荐