Spring获得管理对象的几种实用方法

文章来源:碧蓉 时间:2025-03-28

第1种:曲交始初化Spring容器,得到对于象

ApplicationContextapplicationContext=newClassPathXmlApplicationContext("applicationContext.xml");applicationContext.getBean("beanId");

对于设置文献的读与也有佳多种,尔用到的是设置文献正在SRC底下。如许会始初化Spring容器,而后再获得设备的对于象。

第两种:经由过程情况去得到

ApplicationContextac1=WebApplicationContextUtils.getRequiredWebApplicationContext(request.getSession().getServletContext());ApplicationContextac2=WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());ac1.getBean("beanId");ac2.getBean("beanId");

差别是前者会扔同常,尔后者不时前往NULL

第3种:完毕ApplicationContextAware交心底下给出兑现类,那也是尔用的办法

importorg.springframework.beans.BeansException;importorg.springframework.context.ApplicationContext;importorg.springframework.context.ApplicationContextAware;/***@证据得到Spring设置中的某个对于象*@author崔素强*@see*/publicclassSpringFactoryimplementsApplicationContextAware{privatestaticApplicationContextcontext;@SuppressWarnings("static-access")@OverridepublicvoidsetApplicationContext(ApplicationContextapplicationContext)throwsBeansException{this.context=applicationContext;}publicstaticObjectgetObject(Stringid){Objectobject=null;object=context.getBean(id);returnobject;}}

而后正在applicationContext.xml中建设该Bean便可。

然则注重:

1:必定要把该Bean设备正在建设文献的开端。

2:打消applicationContext.xml的default-lazy-init="true"属性。

3:阐明的时分,Bean的定名是Java小写划定规矩。

那是WEB开辟中能够用到的少许办法,其余办法,接待年夜家主动供给!

推举您浏览更多相关于“ springbeanApplicationContextAware ”的著作