zoukankan      html  css  js  c++  java
  • tomcat启动时自动加载一个类 MyServletContextListener

    目的:

    我们知道在tomcat启动后,需要页面请求进行驱动来执行操作接而响应。我们希望在tomcat启动的时候能够自动运行一个后台线程,以处理我们需要的一些操作。因此需要tomcat启动时就自动加载一个类,或运行一个类的方法。

    可以采用ServletContextListener。

    方法:

    (1)编写一个监听类,实现javax.servlet.ServletContextListener接口。

    复制代码
     1 import javax.servlet.ServletContextEvent;
     2 import javax.servlet.ServletContextListener;
     3 
     4 import com.SWDiskTest.Control.ManagerThread;
     5 import com.SWDiskTest.model.Chamber;
     6 
     7 public class MyServletContextListener implements ServletContextListener {
     8     static Chamber chamber = new Chamber();
     9     static{
    10         System.out.println("static");
    11         new Thread(new ManagerThread(chamber)).start();
    12     }
    13 
    14     @Override
    15     public void contextDestroyed(ServletContextEvent arg0) {
    16         // TODO Auto-generated method stub
    17 
    18     }
    19 
    20     @Override
    21     public void contextInitialized(ServletContextEvent arg0) {
    22         // TODO Auto-generated method stub
    23         System.out.println("start");
    24 
    25     }
    26 
    27 }
    复制代码

    (2)配置web.xml

    复制代码
    <web-app version="3.0" 
        xmlns="http://java.sun.com/xml/ns/javaee" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
        http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
      <listener>
          <listener-class>com.SWDiskTest.startup.MyServletContextListener</listener-class>
      </listener>
    ......
    </web-app>
    复制代码

    注意:

    应用事件监听器程序是建立或修改servlet环境或会话对象时通知的类。它们是servlet规范的版本2.3中的新内容。注册一个监听程序涉及在web.xml的web-app元素内放置一个listener元素。虽然listener元素的结构很简单,但请不要忘记,必须正确地给出web-app元素内的子元素的次序。listener元素位于所有的servlet元素之前以及所有filter-mapping元素之后。此外,因为应用生存期监听程序是serlvet规范的2.3版本中的新内容,所以必须使用web.xmlDTD的2.3或以后版本。

  • 相关阅读:
    【JZOJ5771】遨游【二分】【DFS】
    【JZOJ5773】简单数学题【数论,数学】
    【JZOJ5773】简单数学题【数论,数学】
    有效壳第2部分:成为一个剪贴板体操运动员
    具有多重选择和列表间拖拽的拖拽列表框
    将枚举绑定到下拉列表框并根据值对其排序
    一个具有子项格式的自定义绘制列表控件
    基本的c#屏幕截图应用程序
    将组合框下拉列表宽度调整为最长字符串宽度
    在应用程序中使用按钮控件
  • 原文地址:https://www.cnblogs.com/jpfss/p/9766658.html
Copyright © 2011-2022 走看看