Spring Bean的初始化过程
1.容器寻找Bean的定义信息并且将其实例化
2.设置属性值
3.根据bean的实现不同接口完成方法采用不同的方法来setBeanName()、setBeanClassLoader()
4.调用BeanPostProcessor的预先初始化方法
5.调用InitializingBean的afterPropertiesSet()方法
6.调用init方法
7.调用BeanPostProcessor的后初始化方法
Spring的两大特性
- IOC的原理
控制反转,核心依赖JAVA的反射 - AOP的原理
切面编程,核心依赖动态代理,字节码技术cglib