Spring应用 配置方式/注入方法/作用域/生命周期回调函数
Spring IOC (控制反转) 和 DI(依赖注入)
Spring的元数据配置
1.xml 基于 XML 的元数据不是唯一允许的配置元数据形式
2.注解 基于注解的配置:Spring 2.5 引入了对基于注解的配置元数据的支持
3.javaConfig 基于 Java 的配置:从 Spring 3.0 开始,Spring JavaConfig 项目提供的许多特性成为核心 Spring Framework 的一部分。
Spring的自动注入(xml)
Autowiring mode 自动装配模式
Spring注入有几种方法
set
构造方法
spring的作用域
单例初始化的时候就生成 ,使用的时候去缓存(单例池)_里找
原生容器初始化不生成,在getClass的时候再去初始化对象
原生被单例依赖的时候,会在容器初始化的时候初始化bean
想要单例中恢复原生机制@Lookup
public abstract class CommandManager {
public Object process(Object commandState) {
Command command = createCommand();
command.setState(commandState);
return command.execute();
}
@Lookup("myCommand")
protected abstract Command createCommand();
}
生命周期回调方法 --- 先后顺序
1.用注释的方法@PostConstruct
2.afterPropertiesSet()由InitializingBean回调接口定义
3.自定义配置init()方法
<bean id="exampleInitBean" class="examples.ExampleBean" init-method="init"/>
销毁方法的调用顺序相同:
1.用注释的方法@PreDestroy
2.destroy()由DisposableBean回调接口定义
3.自定义配置destroy()方法
<bean id="exampleInitBean" class="examples.ExampleBean" destroy-method="cleanup"/>
PS:属性注入在回调方法之前执行