码迷,mamicode.com
首页 > 编程语言 > 详细

如何在关闭web服务时进行一些清理操作(Spring mvc)

时间:2015-03-30 11:22:19      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

背景

目前正在替一家500强企业开发系统,因为系统众多所以他们使用ESB对各个系统之间的服务进行管理,同样也要求我们的系统进行对接。要求在我们的系统启动时进行注册,在系统关闭时进行注销。根据要求同事写了一个serverlet在系统启动的时候进行注册操作,但是不知道在系统关闭时进行相应的操作。

解决方法

因为项目使用spring mvc 项目,所以我知道可以通过spring的监听器完成相应的工作。
步骤1:实现ApplicationListener 

package com.efuture.vpm.util;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextClosedEvent;


public class ApplicationEventListener implements ApplicationListener {
protected final Log log = LogFactory.getLog(getClass());
	public void onApplicationEvent(ApplicationEvent event) {
	
		 //容器关闭时触发的事件
		if(event instanceof ContextClosedEvent ){
			
			log.info("application close       1111111111111111111111111111111111111     ");
		}else{
			log.info("application ohter event       222222222222222222222222222222222222222     ");
			
		}
	
	}
}

步骤2: 配置

 <!-- 应用级的监听器 (注销esb) -->
     <bean id="sytemEventListener" class="com.efuture.vpm.util.ApplicationEventListener"></bean>
    

备注:

关闭事件的触发仅限于正常方式关闭服务器,而不是直接关闭 console窗口这样的方式。



如何在关闭web服务时进行一些清理操作(Spring mvc)

标签:

原文地址:http://blog.csdn.net/metecyu/article/details/44746855

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!