默认情况下spring启动的时候对bean实例化。一旦配置延迟启用后,将延迟首次使用时实例化 <bean id="dept" class="cn.mldn.vo.Dept" p:deptno="10" p:dname="开发部" p:loc="北京" lazy-init="true"/>
<!-- 方法都是自定义的方法范畴 ,构造方法之后自动调用初始化 --> <bean id="msg" class="cn.mldn.vo.Message" init-method="init" destroy-method="destory" />
java code:
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); //此时调用msg的init
ctx.registerShutdownHook(); //调用msg的destory
<!-- primary="true" 设置自动装配主选 --> <bean id="depta" class="cn.mldn.vo.Dept" primary="true"> <property name="deptno" value="10" /> </bean> <!-- autowire-candidate="false" 自动装配绝对不会取你了 --> <bean id="deptb" class="cn.mldn.vo.Dept" autowire-candidate="false"> <property name="deptno" value="10" /> </bean> <bean id="emp" class="cn.mldn.vo.Emp" autowire="byType" > <property name="empno" value="7369" /> </bean>
<bean id="dept" class="cn.mldn.vo.Dept"> <property name="deptno" value="10" /> </bean> <!-- 按照类型进行自动装配 --> <bean id="emp" class="cn.mldn.vo.Emp" autowire="byType" > <property name="empno" value="7369" /> </bean> <!-- 按照名称进行自动装配 --> <bean id="emp" class="cn.mldn.vo.Emp" autowire="byName" > <property name="empno" value="7369" /> </bean>