Spring 注入方式
1、设值注入
注:injectionDAO属性必须要有setter方法
2、构造器注入
注:在InjectionServiceImpl类中必须要有构造函数,参数的名称必须为injectionDAO
3、Bean的自动装配(Autowiring)
例子:
注:使用byName和byType进行注入的时候,必须实现setter方法。
Bean的配置项
—Id、Class、Scope、Constructor arguments、Properties、Autowiring Mode、Lazy-initializaton Mode、Initialization/Destruction Method
Bean的生命周期
— 定义
— 初始化
- 实现org.springframwork.beans.factory.InitializingBean接口,覆盖afterPropertiesSet方法
- 配置init-method
— 使用
— 销毁
- 实现org.springframework.beans.factory.DisposableBean接口,覆盖destroy方法
2、配置destroy-method
3、配置全局初始化和销毁方法
注:
1、当Bean使用了init-method、destroy-method或实现了InitializingBean、DisposableBean接口时,全局的default-init-method、default-destroy-method无效。
2、当Bean使用了init-method、destroy-method或实现了InitializingBean、DisposableBean接口时,InitializingBean、DisposableBean先于init-method、destroy-method执行。
Aware
实例:
通过这种方法可以直接得到上下文供其他方法使用
Resource
针对资源文件的统一接口。spring在加载资源文件时使用resource
ResourceLoader
加载resource资源,所有的ApplicationContext都可以获取resource的实例
三种方式得到resource资源:
注解实现Bean管理
1. Classpath扫描与组件管理
2. 类的自动检测与注册Bean
组件自动扫描
3. <context:annotation-config/>
基于注解的容器配置,需添加
4. 指定自定义的命名策略
5. 作用域(Scope)