今天在做项目的时候,需要在tomcat启动的时候便进入某个java类中初始化一些信息。主要是加载数据字典表中的数据。通过学习了tomcat的事件处理机制以及tomcat的生命周期。将该问题成功解决,现在将这个过程记录如下:

一:首先,自定义一个监听器类,并实现ServletContextListener,重写里面的contextDestroyed和contextInitialized,将需要进行的操作写在这两个方法中。

public class TomcatListener implements ServletContextListener{/* (non-Javadoc)* @see javax.servlet.ServletContextListener#contextDestroyed(javax.servlet.ServletContextEvent)*/@Overridepublic void contextDestroyed(ServletContextEvent arg0) {System.out.println("tomcat关闭了..........");}/* (non-Javadoc)* @see javax.servlet.ServletContextListener#contextInitialized(javax.servlet.ServletContextEvent)*/@Overridepublic void contextInitialized(ServletContextEvent arg0) {System.out.println("tomcate启动了..............");}}

二:在web.xml中注册该监听器。注册一个监听程序涉及在web.xml的web-app元素内放置一个listener元素。在listener元素内,listener-class元素列出监听程序的完整的限定类名,如下所示:

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5"><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext*.xml</param-value></context-param><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><listener><listener-class>cn.caculate.web.action.TomcatListener</listener-class></listener><listener><listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class></listener>

虽然listener元素的结构很简单,但请不要忘记,必须正确地给出web-app元素内的子元素的次序。listener元素位于所有的servlet元素之前以及所有filter-mapping元素之后。此外,因为应用生存期监听程序是serlvet规范的2.3版本中的新内容,所以必须使用web.xml DTD的2.3版本及以上,而不是2.2版本。

Tomcat启动与关闭事件监听相关推荐

  1. Bootstrap modal 关闭事件监听

    以下是一个BootStrap modal弹框 <div class="modal fade" id="colorModal" tabindex=" ...

  2. linux下启动与关闭oracle监听与实例

    linux中启动oracle主要分两步:一个是启动监听器,一个是启动实例(一般都忘记了这一步),具体命令如下,提供给大家参考一下: 1:连接服务器 telnet ip 2:输入管理员用户和密码 use ...

  3. linux系统oracle监听启动,linux下启动与关闭oracle监听与实例

    转自:http://fireye83.iteye.com/blog/1064116 一.如何启动数据库实例 1.进入到sqlplus启动实例 [oracle@localhost ~]$ su - or ...

  4. html5中页面关闭事件监听,JS针对浏览器窗口关闭事件的监听方法集锦

    本文实例总结了JS针对浏览器窗口关闭事件的监听方法.分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) window.οnbefοreun ...

  5. JS做谷歌浏览器关闭事件监听

    问题:自动化录制插件开发,每次录制结束,如果直接点击关闭而不通过自动化窗口提供的按钮实现,则下一次窗口打开的时候出现错乱,步骤显示.tabid显示等问题.经过排查,窗口新开是在父级框架,同时正常点击录 ...

  6. plus webview关闭事件监听

    plus.webview.currentWebview().addEventListener("close",function(){ },false); 转载于:https://w ...

  7. 事件监听watch框架vue2.x与3.x都适用

    前言: 目前正在学习vue或者对vue部分使用不太熟悉的可以跟着的我文章,打开编辑器,安装vue-cli一步步的练习,不会安装vue-cli脚手架的小伙伴可以先看这篇文章https://blog.cs ...

  8. springBoot启动事件监听机制

    springBoot启动之事件监听机制源码解析 1. Java的事件监听机制 在进行正式的分析之前,先介绍一下Java的事件监听机制.参考05–SpringBoot启动之事件监听机制 Java事件监听 ...

  9. oracle 启动 linux监听,Linux下启动Oracle服务和监听程序

    $ su – oracle $ sqlplus / nolog sql> conn / as sysdba sql> startup                 #启动Oracle,需 ...

最新文章

  1. 打印JavaScript对象的内容? [重复]
  2. contos LINUX搭建LAMP笔记
  3. 江苏自学考试计算机网络专业,速看,江苏自考本科计算机网络专业介绍
  4. 程序员要常做好的几件事
  5. 《Python游戏趣味编程》 第9章 贪吃蛇
  6. mediacodec 相关问题
  7. IE11离线安装总是提示“获取更新”的解决方法
  8. 读书印记 - 《终极算法》
  9. 【土地利用变化分析】土地利用转移矩阵
  10. charles 批量重复请求/重复发包工具
  11. python半圆代码_r或python中的半圆形色轮[闭合]
  12. in comment after two dashes (--) next character must be > not (position: START_TAG seen ...
  13. Hazelcast介绍
  14. DS18B20 单总线多器件的ROM 搜索, ALARM 检测, CRC 校验 源码实现, 基于 STM32F103
  15. 爬取京东商城中的书籍信息
  16. 微信小程序--获取二维码(java后端)
  17. 最大数leetcode_Leetcode:最大化有效体验
  18. 关于缓存一致性的一些介绍
  19. media recovery oracle,oracle 数据块损坏 Oracle 数据块损坏与恢复详解
  20. Google Cloud Next '17主题演讲的5个重要要点

热门文章

  1. 安卓系统曝root权限安全漏洞 已有软件利用
  2. Python Flask web后端开发
  3. LM NTLM ophcrack RainBow table (转)
  4. 金属商务本-戴尔Vostro成就3450评测
  5. 11.05T2 线段树+卡特兰数
  6. AMD深度学习库MIOpen更新,支持CNN加速
  7. springMVC4(14)各类视图输出实例分析
  8. Pig安装及简单使用(pig0.12.0 hadoop2.2.0)
  9. 自己动手实现分布式任务调度框架
  10. python笔记9-多线程Threading之阻塞(join)和守护线程(setDaemon)