IOC的底层实现原理
工厂+反射+配置文件。
将创建对象的控制权,交给spring管理。
DI依赖注入,在控制反转的基础上,将类依赖的属性注入进去。
1、spring的工厂类:BeanFactory(接口,传统方式)和ApplicationContext(接口,新的方式)。
BeanFactory是Application的顶级接口。
2、Bean的实例化三种方式:
使用类构造器实例化。
使用静态工厂方法实例化
使用实例工厂方法实例化。
3、Bean的作用域
singleton:在springIOC容器中仅存在一个Bean实例,单例。默认的。
prototype:每次调用getBean()都返回一个新的实例。
request:每次HTTP请求都会创建一个新的实例,仅适用于WebApplicationContext环境。
session:同意个HTTP session共享一个Bean,不同的HTTP session使用不同的bean,仅适用于WebApplicationContext环境。
4、spring的属性注入:构造方法注入和setter注入。
5、spring注解定义Bean。
@Component:描述Spring框架中的bean
@Repository:对DAO实现类进行标注
@Service:对Service实现类进行标注
@Controller:对Controller实现类进行标注