1. Listener with spring container when service is started (method to inherit Contextloaderlistener listener)
Public classListenerspringcontextextendsContextloaderlistener {Private FinalLogger log = Loggerfactory.getlogger (listenerspringcontext.class); Public voidcontextinitialized (Servletcontextevent event) {Log.info ("Init listenerspringcontext ..."); Super. contextinitialized (event); ApplicationContext ApplicationContext=Webapplicationcontextutils.getwebapplicationcontext (Event.getservletcontext ()); //manually keep a spring-injected container yourselfUtilsspringcontext.setapplicationcontext (ApplicationContext); }}
2. Ways to implement Appctioncontextaware
Packagecom.ceopen.eoss.spring; Importorg.springframework.beans.BeansException; ImportOrg.springframework.context.ApplicationContext; ImportOrg.springframework.context.ApplicationContextAware; Public classSpringutilImplementsApplicationcontextaware {Private StaticApplicationContext ApplicationContext; @Override Public voidSetapplicationcontext (applicationcontext context)throwsbeansexception {springutil.applicationcontext=context; } Public StaticObject Getbean (String name) {returnApplicationcontext.getbean (name); } }
Inject springutil into the spring configuration file
<id= "Spring" class= "Com.ceopen.eoss.spring.SpringUtil" />
Get
Icbmission icbmission = (icbmission) springutil.getbean ("Icbmission");
spring-a scheme for injecting objects into the spring IOC container from a common Java class