实现SpringMVC的ApplicationListener接口进行预处理

实现SpringMVC的ApplicationListener接口进行预处理

今天需要用到预先处理一些信息的需求,于是就查找资料,发现SpringMVC的ApplicationListener接口可以很好的满足我的要求

如果我们需要在SpringMVC在启动的时候就执行一些操作,如DB操作,用以缓存操作

那您继承这个接口应该是最好的办法

由于我们是用SpringMVC管理的事务的,采用的注入方式,就是说在事务范围内是可行的,但是一旦连接断开,就会对事务进行释放,那你的连接也就没了

所以我们希望在spring启动的时候就执行

那就可以考虑继承ApplicationListener接口,而这些是不在事务管理的范围内的


我这里有一段简单示例代码,大家可以参考下


/*
 * 初始化信息
 */
@Component("initListener")
public class InitListener implements ApplicationListener<ContextRefreshedEvent>{
	@Override
	public void onApplicationEvent(ContextRefreshedEvent arg0) {
		//创建一些DB或其他需要初始化的操作
		System.out.println(arg0.toString());
	}
}
然后添加扫描即可


<context:component-scan base-package="springMVC.NLoveB.Command" />


<context:component-scan base-package="springMVC.NLoveB.Command" />
这样,springMVC在启动的时候就会先执行这个类




爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情Blog Img