在web.xml中配置了MyListener,MyListener中有个myService,有个setMyService方法,在xml文件中配置了
<bean id="myListener" class="com.MyListener" scope="prototype">
<property name="myService" ref="myService"/>
</bean>
但是MyListener中的那个myService一直都是null,我该怎么注入?
<bean id="myListener" class="com.MyListener" scope="prototype">
<property name="myService" ref="myService"/>
</bean>
但是MyListener中的那个myService一直都是null,我该怎么注入?
参考:http://topic.csdn.net/u/20090608/17/669e10c2-30c7-47e9-baed-2bf3dfc8cb26.html
ServletContext sc = request.getSession(true).getServletContext();
ApplicationContext beans = WebApplicationContextUtils.getRequiredWebApplicationContext(sc);
MyService service = (MyService) beans.getBean("myService");
以上代码就可以啦。 你在监听器里可以用service了。 可能不满足你的要求,这毕竟不是注入。我不知道是否可以注入,我一般都是这么干的。
你的做法跟2楼的做法差不多,拿到那个service了。问个问题,一般项目中自己写的Listener会很多吗?
是Listener 已经用getBean方法拿到了service