1、延迟初始化Bean--lazy-init。
Spring容器会在创建容器时提前初始化“singleton”作用域的Bean,“singleton”就是单例的意思即整个容器每个Bean只有一个实例。
延迟初始化的Bean通常会在第一次使用时被初始化;或者在被非延迟初始化Bean作为依赖对象注入时在会随着初始化该Bean时被初始化,因为在这时使用了延迟初始化 Bean。
2、depends-on。
depends-on是指指定Bean初始化及销毁时的顺序,使用depends-on属性指定的Bean要先初始化完毕后才初始化当前Bean,由于只有“singleton”Bean能被Spring管理销毁,所以当指定的Bean都是“singleton”时,使用depends-on属性指定的Bean要在指定的Bean之后销毁。
3、init-method="init"
指定初始化方法,在构造器注入和setter注入完毕后执行。
4、destroy-method="destroy"
指定销毁方法,只有“singleton”作用域能销毁,“prototype”作用域的一定不能,其他作用域不一定能。
5、dependency-check
none:默认方式,表示不检查;
objects:检查除基本类型外的依赖对象;
simple:对基本类型进行依赖检查,包括数组类型,其他依赖不报错;
all:对所以类型进行依赖检查;