自定义ServletContextListener使用Spring提供的bean的方法是在方法中手工调用,虽然会损耗一些资源,但是这一部分操作处于服务器启动时,是一次性的损耗,对用户访问并无太大影响。使用方法如下:
/**
* 初始化监听器,加载一些必要的信息到application域
*/
@Override
public void contextInitialized(ServletContextEvent event) {
ApplicationContext applicationContext = WebApplicationContextUtils.getWebApplicationContext(event.getServletContext());
this.optionDao=(OptionDao)applicationContext.getBean("optionDao");
...
}