设计原则:开放扩展,封闭修改。
BeanFactoryPostProcessor : 可以插手beanFactory的生命周期
BeanPostProcessor :可以插手bean的生命周期
ImportSelector :借助@Import注解,可以动态实现将一个类是否交由spring管理,常用作开关操作AOP核心其实就是创建AnnotationAwareAspectJAutoProxyCreator类(后置处理器),该类最终实现的接口为BeanPostProcessor类,
创建好后置处理器的对象,放在容器中,其实所有注解都有对应自己的后置处理器其它bean组件的创建对象的时候,都会会被AnnotationAwareAspectJAutoProxyCreator的后置处理器拦截,拦截到创建过程。
s锁(共享锁)又称读锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。
x锁(排他锁)又称写锁。若事务T对数据对象A加上X锁,事务T可以读A也可以修改A,其他事务不能再对A加任何锁,直到T释放A上的锁。