侦测WebApp的启动与结束

来源:互联网 发布:斗鱼皇帝 知乎 编辑:程序博客网 时间:2024/04/28 03:07

     如果要在Web后台一直跑一些service,最简直直接的方法是是WebApp启动的时候建立一支thread然后把service的动作写在里面, 然后当WebApp结束的时候退出此thread。

     那么如何侦测WebApp的启动与结束呢? servlet容器提供ServletContextListener这个监听器接口,只要我们基于它新建一监听类即可,下面是代码:

public class MyAppServletContextListener implements ServletContextListener {@Overridepublic void contextDestroyed(ServletContextEvent arg0) {System.out.println("ServletContextListener started");}@Overridepublic void contextInitialized(ServletContextEvent arg0) {System.out.println("ServletContextListener started");}}


        你可以把启动service的代码放于contextInitialized,把终结service的代码放于contextDestroyed。

还有一个步骤,就是需要在web.xml里面注册这个监听器:

  <listener>    <listener-class>    com.alco.achat.tomcat.MyAppServletContextListener    </listener-class>    </listener>


重启 webapp容器看看console,是不是OK了?



0 0
原创粉丝点击