Spring起動後実行

1606 ワード

方法1:
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;  
    }  
} 
設定ファイルに追加:
<bean class="processor.InstantiationTracingBeanPostProcessor"/>
方法二:
InitializingBenインターフェースを実現する:
public class SysInitBean implements InitializingBean, ServletContextAware {
	public void afterPropertiesSet() throws Exception {
	}

	@Override
	public void setServletContext(ServletContext servletContext) {
	}
}
設定ファイルに追加:
<bean class="processor.SysInitBean"/>
方法三:
Servlet Conteext Listenerを実現する:
public class RedisInitListener implements ServletContextListener {

	@Override
	public void contextDestroyed(ServletContextEvent sce) {

	}

	@Override
	public void contextInitialized(ServletContextEvent sce) {
		//WebApplicationContext wa = WebApplicationContextUtils.getWebApplicationContext(sce.getServletContext());
		ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");		
	}
}
web.xmlにlistenerを追加する:
<listener>
	<listener-class>listener.RedisInitListener</listener-class>
</listener>