目录
一.基本概念
1. Java Bean与Spring Bean区别
2.什么是BeanDefinition
3.BeanFactory 与Application的区别
4.BeanPostProcessor
5.BeanFactoryProcessor
二.IOC
1.Bean的生命周期
一.Bean创建的生命周期
二.Bean销毁的生命周期
2.Spring中有几种依赖注入的方式
3.循环依赖
一.什么是循环依赖
二.三级缓存
三.AOP
四.Spring事务
1.事务隔离级别
2.传播机制
3.什么时候事务会失效
一.基本概念
1. Java Bean与Spring Bean区别
用处不同:
传统javabean更多地作为值传递参数,而spring中的bean用处几乎无处不在,任何组件都可以被称为bean。
写法不同:
传统javabean作为值对象,要求每个属性都提供getter和setter方法;但spring中的bean只需为接受设值注入的属性提供setter方法。
生命周期不同:
传统javabean作为值对象传递,不接受任何容器管理其生命周期;spring中的bean有spring管理其生命周期行为
2.什么是BeanDefinition
Spring启动后把带注解或xml配置的文件,扫描,生成BeanDefinition ,放到一个Map集合中。下图是BeanDefinition在Bean生命周期的位置。
3.BeanFactory 与Application的区别
BeanFactory是Spring框架中IoC容器的顶层接⼝,它只是⽤来定义⼀些基础功能,定义⼀些基础规范,⽽ApplicationContext是它的⼀个⼦接⼝,所以ApplicationContext是具备BeanFactory提供的全部功能的。
通常,我们称BeanFactory为SpringIOC的基础容器,ApplicationContext是容器的⾼级接⼝,⽐BeanFactory要拥有更多的功能