- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
创建Servlet监听和过滤程序
10
创建Servlet过滤程序
和监听
第
章
本章目标
过滤器的应用
监听器的应用
Servlet过滤器
过滤器,顾名思义就是在源和目标之间起到过滤作用的中间组件
Servlet过滤器
在请求资源时,过滤器链中的过滤器将依次对请求进行处理,并将请求交给下一个过滤器,直到通过所有过滤器到达目标资源
Servlet过滤器
过滤器在WEB开发中的一些主要应用
对用户请求进行统一认证
用户的访问进行记录和审核
对用户发送的数据进行过滤或替换
转换图像格式
对响应内容进行压缩,减少传输量
对请求和响应进行加解密处理
Servlet过滤器
实现Servlet过滤器的步骤
实现javax.servlet.Filter接口的servlet类
实现init方法,读取过滤器的初始化函数
实现doFilter方法,完成对请求或过滤的响应
调用FilterChain接口对象的doFilter方法,向后续的过滤器传递请求或响应
在web.xml中配置Filter
Servlet过滤器
一个字符过滤器的实现
Servlet过滤器
在index.jsp中输入如下代码
%@ page pageEncoding=GB2312%
html
head
title登陆首页/title
/head
body
form action=check.jsp method=post
br
用户名:
input type=text name=username /
br
密nbsp;nbsp;nbsp;nbsp;码:
input type=password name=pwd
br
input type=submit value=提交
/form
/body
/html
输入页面
Servlet过滤器
%@ page pageEncoding=GB2312%
html
head
title获取登陆名和密码/title
/head
body
你刚才输入的用户名是${param.username},密码是${param.pwd} br
/body
/html
请求页面
在check.jsp中输入以下代码
过滤器链的实现
前面我们提到过滤器链就是多个过滤器组成的,在web.xml部署多个过滤器,过滤器链就形成了。过滤器链中的每个过滤器执行的先后顺序,主要和web.xml中每个过滤器的filter-mapping位置有关,配置顺序在前的,先执行。因此,要使用过滤器链,要特别注意filter-mapping元素的顺序
Servlet监听器
实现Servlet监听器开发与部署方法
编写监听器实现类
部署监听器
在web.xml文件中配置监听器,配置如下
listener
listener-class监听器实现类 /listener-class
/listener
Servlet监听器
实现ServletContext监听器
public class ContextListenerLife
implements ServletContextListener,ServletContextAttributeListener {
private ServletContext application = null ;
public void contextInitialized(ServletContextEvent event) {
this.application= event.getServletContext();
System.out.println(加载初始化) ;
}
public void contextDestroyed(ServletContextEvent event) {
System.out.println(上下文被销毁) ;
}
public void attributeAdded(ServletContextAttributeEvent event) {
System.out.println(上下文中加入一个属性它的值是“+event.getValue()) ;
}
public void attributeRemoved(ServletContextAttributeEvent event) {
System.out.println(上下文中移除一个属性它的值是 + event.getValue()
您可能关注的文档
- 3dmax2010板书与捷键大全.doc
- 第一讲 界面详解.doc
- 高中英语必修三 Unit4:Learning_about_language.ppt
- 3.2、表的复制、删除与更名.ppt
- 大连理工大学出版社信息技术八下第二单元.doc
- 从通用提示中提升用户体验.doc
- 第六讲FAT16删除格式.ppt
- (技术资料)SQL_Server_2008_的新功能.doc
- 3Dsmax2010板书.docx
- 第5章 建立网站.ppt
- 内蒙古自治区根河市2024届中考化学考前最后一卷含解析.doc
- 2024届山西省阳泉市平定县中考冲刺卷化学试题含解析.doc
- 山西省运城市夏县达标名校2024年中考联考化学试卷含解析.doc
- 广东省深圳罗湖区四校联考2024届中考试题猜想化学试卷含解析.doc
- 2024届湖北省宜昌市天问校中考化学五模试卷含解析.doc
- 2024届山东省泰安宁阳县联考中考冲刺卷化学试题含解析.doc
- 云南省富宁县2024年中考化学押题试卷含解析.doc
- 2024届湖北省枣阳市重点名校中考化学全真模拟试卷含解析.doc
- 甘肃省兰州市联片办2024届中考化学最后冲刺卷含解析.doc
- 天津市滨海新区第四共同体2024届中考适应性考试化学试题含解析.doc
文档评论(0)