WEB项目启动加载的实现方式整理
方法一:
实现org.springframework.beans.factory.config.BeanPostProcessor接口:
public class InstantiationTracingBeanPostProcessor implements BeanPostProcessor { public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException { return bean; } public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException { return bean; } }在spring配置文件中添加:
<bean class="***.***.InstantiationTracingBeanPostProcessor"/>
public class SysInitBean implements InitializingBean, ServletContextAware {public void afterPropertiesSet() throws Exception {}@Overridepublic void setServletContext(ServletContext servletContext) {}}在spring配置文件中添加:
<bean class="***.***.SysInitBean"/>
public class RedisInitListener implements ServletContextListener {@Overridepublic void contextDestroyed(ServletContextEvent sce) {}@Overridepublic void contextInitialized(ServletContextEvent sce) {//WebApplicationContext wa = WebApplicationContextUtils.getWebApplicationContext(sce.getServletContext());ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");}}在web.xml中添加listener:
<listener> <listener-class>***.***.RedisInitListener</listener-class> </listener>