使用JBuilder开发Servlet之监听器.doc_第1页
使用JBuilder开发Servlet之监听器.doc_第2页
使用JBuilder开发Servlet之监听器.doc_第3页
使用JBuilder开发Servlet之监听器.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

使用JBuilder开发Servlet之监听器Web应用服务器会产生各种事件,如Web容器启动事件、session过期事件、请求到达事件等等。事件处理方法使程序对Web应用服务器的控制能力大为提高。 在这一节里,我们监听Web容器启动关闭的事件,在事件发生时记录Web应用程序启动和关闭的系统日志,以便系统管理员通过这个日志查看Web应用程序的启动和关闭情况。日志以Excel文件格式保存在D:/serverLog的目录下。当登录成功后,用户可以将这份日志以附件的形式下载下来,下载Excel日志文件的功能将在本专题的最后一节实现。下面我们来创建这个记录系统日志的Servlet监听器。 1启动创建Servlet监听器的向导。 通过File-New.-Web-双击ListenerServlet图标启动创建Servlet监听器的向导,如下图所示: 图9图9指定监听器的名字 这一步和创建标准Servlet类似,我们指定监听器的类名为:SrvStartListener,包名为servlettest,按Next到下一步。 2指定监听器实现的事件接口。 图10图10选择监听器需要实现的事件接口 因为Web容器的启动和关闭事件是ServletContextListener接口定义的,所以我们选择这个接口,按Finish创建这个监听器。 打开向导创建的SrvStartListener.java,并录入下面粗体的代码: 代码清单6SrvStartListener.java1.packageservlettest;2.3.importjava.io.*;4.importjava.util.*;5.importjava.text.SimpleDateFormat;6.7.publicclassSrvStartListener8.extendsHttpServletimplementsServletContextListener9.10.11.publicvoidcontextInitialized(ServletContextEventsce)12.13.GregorianCalendarcal=newGregorianCalendar();14.intyear=cal.get(Calendar.YEAR);/得到当前年份15.intmonth=cal.get(Calendar.MONTH)+1;/得到当前月份16.Filefile=newFile(D:serverLoglog_+year+_+month+.xls);17.FileWriterfw=null;18.try19.20./如果文件存在,日志追加到文件末尾,否则创建新的文件21.fw=newFileWriter(file,true);22.SimpleDateFormatsdf=newSimpleDateFormat(yyyy-MM-ddHH:mm:ss);23.Stringstarttime=sdf.format(newDate();24.fw.write(于+starttime+启动Web容器n);25.catch(IOExceptionex)26.27.ex.printStackTrace();28.finally29.30.try31.32.if(fw!=null)33.34.fw.close();35.36.catch(IOExceptionex1)37.38.ex1.printStackTrace();2.43.contextInitialized()方法在Web容器初始化时被调用,在该方法中,我们向D:serverlog.xls中写入一行日志;而contextDestroyed()方法在Web容器关闭前被调用,限于篇幅我们只列出contextInitialized()的代码,完整的代码请查看本书所附光盘中的程序。打开web.xml,可以看到这个监听器的部署描述信息,它向Web应用服务器注册一个监听器,如下所示:代码清单7关于SrvStartListener监听器的部署描述信息2.web-app3.4.listener5.listener-classservlettest.SrvStartListener/listener-c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论