Spring容器初始化及问题解决方案
1.Springbean组件”默认为单例模式scope=“singleton,运行JavaApplication容器启动时自动创建对象
scope=“prototype”为多例模式,请求条件下才创建对象
2beans组件里面default-init-method初始化方法加载,范围比较大,当没有此方法时不会报错,default-destroy-method销毁方法,default-lazy-init=“true/false”对象延时实例化
3.bean组件里面init-method初始化无此方法,会报错,destroy-method销毁方法,lazy-init=“true/false”延时实例化
注意:
1.销毁方法对scope=“prototype”多例模式无效
2.AbstractApplicationContext可以关闭容器,可以调用close()方法,关闭容器,调用销毁方法
3.对象延时实例化对多例模式没有意义。
XML
Test方法
//bean组件的默认方式 @Test publicvoidbeanInitTest(){ AbstractApplicationContextappContext=newClassPathXmlApplicationContext("com/tracy/xml/bean-init-destroy.xml"); ApplicationContextapp=newClassPathXmlApplicationContext("com/tracy/xml/bean-init-destroy.xml"); Empemp=app.getBean("emp",Emp.class); System.out.print(emp); appContext.close(); }
通过构造完成初始bean属性,可以通过初始化完成
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。