1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml,读两个节点<listener></listener>  和<context-param></context-param>

  2. 紧接着,容器创建一个ServletContext(上下文),这个web项目所有部分都将共享这个上下文

  3. 容器<context-param></context-param>化为键值对,并交给ServletContext.

  4. 容器创建<listener></listener>中的类实例,即创建监听

  5. 监听中会有contextInitialized(ServletContextEvent args)初始化方法,在这个方法中获得

    ServletContext=ServletContextEvent.getServletContext().context-param的值=ServletContext.getInitParameter("context-param的键");

  6. 得到这个context-param得值后,就可以做一些操作了,这个是后web项目还没有启动

  7. eg:可以在项目启动之前打开数据库,在<context-param>中设置数据库得连接方式,在监听中初始化数据库得连接

  8. 这个监听是自己写的类,除了初始化方法(继承系统得监听类),还有销毁方法,这里可以关闭数据库连接,释放资源