第3章:过滤器与监听器重点讲义.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章:过滤器与监听器重点讲义

Servlet 第三章: 过滤器与监听器 目录 过滤器 监听器 过滤器(Filter)简介 过滤器能对客户的请求进行预先处理,然后再将请求转发给其他web组件。 过滤器是在Servlet2.3规范中定义的,它可以对Web组件的,ServletRequest和ServletResponse进行检查和修改。 过滤器本身并不生成ServletRequest对象和ServletResponse对象,它只对web组件提供以下过滤功能: 在web组件调用之前检查request,并修改请求头和请求正文。 过滤器能够在web组件被调用之后检查response对像,修改响应头和响应正文。 过滤器的工作原理 过滤器的过滤过程 Web 客户端 Servlet 容器 Tomcat 请求 响应 被N个 过滤器 拦截 请求 响应 Servlet Jsp Html 请求/响应 自定义过滤器 自定义的过滤器必须实现:javax.servlet.Filter接口。此接口定义了以下三个方法: init(FilterConfig conf) 过滤器的初始化方法。-初始化工作执行一次(启动时)。 doFilter(ServletRequest,ServletResponse,FilterChain) 此方法完成实际的过滤操作。只要是配置的url匹配此过滤器的配置,即执行此方法。 destroy() Servlet窗口在销毁过滤器时执行此方法。-销毁工作也只执行一次。 字符编码过滤器 实现步骤(字符集的设置直接定义于代码中) 第一步:实现Filter类。 第二步:在doFilter方法中书写代码。 第三步:在Web.xml中配置过滤器 public void doFilter(ServletRequest srequest, ServletResponse sresponse,FilterChain chain) throws IOException, ServletException { HttpServletRequest request=(HttpServletRequest)srequest; HttpServletResponse response=(HttpServletResponse)sresponse; request.setCharacterEncoding(“UTF-8”); //设置字符集编码 response.setContentType(text/html;charset=UTF-8); chain.doFilter(request, response); } 设置response的响应头信息,其他的Servlet中就不用再设置响应头 1.chain.doFilter(request, response);是将请求转到下一个过滤器链。 2.过滤器链是是指多个过滤器同时发生效用,按配置mapping/的前后依次执行。 字符编码过滤器 实现步骤 第三步:在Web.xml中配置过滤器 filter filter-namecharset/filter-name filter-classcn.filter.CharacterFilter/filter-class /filter filter-mapping filter-namecharset/filter-name url-pattern/*/url-pattern /filter-mapping filter-name:过滤器的名称filter-class:过滤器的类文件 filter-mapping是过虑器的映射信息url-pattern-是需要过虑的资源url 在filer /filter中可以配置init-param init-param是过滤器的初始化参数 param-name – 是参数名 param-value – 是参数值 字符编码过滤器 将字符集配置到过滤器的初始化参数中 filter filter-namecharset/filter-name filter-classcn.filter.CharacterFilter/filter-class

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档