Web监听技术.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Web监听技术.doc

Web监听技术 1、概述 在Web应用中,可以部署一些特殊的Servlet类,从而实现监听Web应用中的上下文信息、Servlet会话信息、Servlet请求信息等。 通过对这些信息的监听,从而可以在服务器的后台自动启动某些程序,完成一些特殊的应用。 2、Web应用的生命周期事件 Servlet API 2.3第二个意义重大的改变是增加了Web应用程序生命周期事件,即当Servlet Contexts和Sessions被初始化或释放时,以及当向Servlet Contexts或Session上添加或删除属性的时候,都将通知listener对象。Servlet生命周期事件与Swing的事件机制类似。 如果你想让你的类监听应用的启动和停止事件,你就得实现ServletContextListener接口;如果你想让你的类去监听Session的创建和失效事件,那你就得实现HttpSessionListener接口。 (1)对ServletContext生命周期进行观察的监听器必须实现 ServletContextListener接口 这个接口有两个方法: void contextInitialized(ServletContextEvent e) 该方法在Web应用程序第一次准备处理Requests请求的时候(例如:Web Server启动并且ServletContext被加载和重新加载时)被执行。本方法返回之前不开始处理Requests请求。 void contextDestroyed(ServletContextEvent e) 该方法在Web应用程序要被关闭的时候(例如:当Web Server关闭或当一个ServletContext被移去或重新加载的时候) 被执行。本方法调用时Request请求处理已经停止。 传入这些方法的ServletContextEvent类只有一个返回被初始化或被移去的获得ServletContext的getServletContext()方法。 (2)Session Listener Model与Context Listener Model类似。在Session事件模型中, 有一个拥有两个方法的HttpSessionListener接口: void sessionCreated(HttpSessionEvent e):当Session创建时被调用 void sessionDestroyed(HttpSessionEvent e):当Session被释放时或无效时被调用 这些方法接受一个拥有返回被创建或被释放的Session的getSession()方法的HttpSessionEvent类实例。可以使用这些方法实现一个对Web 应用程序中所有的活动用户进行跟踪的管理者接口。 3、生命周期事件的应用编程 (1)编程实现的步骤 编程对应的生命周期事件类程序 并根据应用的需要实现某一生命周期事件的监听器接口,并在该类中重写相应的生命周期事件处理的方法 在web.xml中部署该事件类程序(注意:由于监听是针对整个Web应用程序而言的,因此不需要象FilterServlet那样设置filter-mapping) 启动本Web应用,当应用的状态满足某一事件的触发条件时,容器将自动地触发对生命周期事件处理的方法调用 (2)应用的示例 生命周期事件的一个实际应用是由ServletContext中监听器管理共享数据库连接。每当web服务器启动后将自动创建出数据库的连接(也可以实现其它只需要初始化一次的任务)。 实现该应用目的的监听器的程序代码例子如下: import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; public class MyConnectionManager implements ServletContextListener { Connection con=null; String url=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=DataBase; String DBDriver=com.microsoft.jdbc.sqlserver.SQLServerDriver; public void contextInitialized(ServletContextEvent e) { try { Class.forName(DBDriver); con= DriverManager.getConnection(url,sa,); //创建出数据库的连接代码 }

文档评论(0)

docindoc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档