- 1、本文档共94页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
63 过滤器配置示例 64 过 滤 器 过滤器配置示例 — 获取初始化参数 ? 可以在 doFilter 方法中通过以下代码获取 adminPhone 和 adminEmail 的值 65 过 滤 器 过滤器配置示例 — 检查用户输入 ? 如果用户输入非法,可以发送一个错误消息,告诉 用户 ? 如果输入不完全非法,只在首部或者尾部包含空字 符,可以使用 trim() 来修正,如 String firstName= request.getParameter(irstName); if (firstName!= null) firstName= firstName.trim(); 66 过 滤 器 过滤器配置示例 — 检查用户输入(续) ? 可以编写一个过滤器对 HttpServletRequest 对象的每 个参数值,在传送给 servlet 前执行 trim ? 可以改变参数值 ? 将去空后的参数值放到属性中,参数名作为属性名 ? 随后,在 servlet 中,通过访问 HttpServletRequest 属性获 取去空后的输入 67 过 滤 器 过滤器配置示例 — 检查用户输入(续) 68 过 滤 器 31 主要内容 ? 事件监听器 ? 过滤器 32 过滤器 Filter ? 用于在用户访问 Web 资源前,对请求做预处理 ? 使得可以在将 HttpServletRequest 和 HttpServletResponse 对象传递给 Servlet 前被访问 ? 功能 ? 记录所有进入请求并将对请求 PC 的 IP 地址做日志 ? 可以作为加密 / 解密设备 ? 用户认证、数据压缩、用户输入验证等 过 滤 器 Web 应用中的 Servlet 过滤器 ? 过滤器允许解释 Web 客户和 Web 资源之间的输入 / 输 出 HTTP 消息 ? 在将 HTTP 请求传递给 Web 资源前,可用一个或者多个过 滤器解释 / 修改 ? 当一个资源转发或者包含另一个使用请求派遣器时,也 可以运行过滤器过滤 33 过 滤 器 过滤器的典型应用场景 ? 验证过滤器 ? 日志和审计过滤器 ? 图象转换过滤器 ? 数据压缩过滤器 ? 加密过滤器 ? 令牌过滤器 ? 触发资源访问事件的过滤器 ? 转换 XML 文档的 XSLT 过滤器 ? MIME 类型链过滤器 ? 缓存过滤器 34 过 滤 器 过滤器处理流程 35 过 滤 器 过滤链处理 ? 过滤器可以配置成一个链式结构 ? 用 FilterChain 对象来描述链 ? 过滤器通过嵌套调用被调用 ? Servlet 容器在链表的第一个过滤器中调用 doFilter() ? 类 ? javax.servlet.Filter 的实现类 ? 参数 ? ServletRequest 类型的 Request ? ServletResponse 的 Response ? FilterChain 类型的 Chain 36 过 滤 器 过滤链处理(续) ? 链中的第一个过滤器调用 doFilter() 来调用下一个过 滤器 ? 从输入 FilterChain 对象引用 ? 类 ? javax.servlet.FilterChain ? 参数 ? ServletRequest 类型的 Request ? ServletResponse 的 Response ? 链的最后一个入口是 Web 资源 37 过 滤 器 doFilter() 的嵌套调用 38 过 滤 器 39 过滤器接口 Filter ? 过滤器必须实现 javax.servlet.Filter 接口 public interface Filter { public void init (FilterConfig filterConfig) throws ServletException; public void doFilter (ServletRequest request, ServletResponse response, FilterChain chain) throws java.io.IOException, ServletException ; public void destroy() ; } 过 滤 器 init 方法 ? 当 servlet 容器调用 init 方法后,过滤器生命周期开始 ? 当过滤器实例化后, servlet 容器只调用 init 方法一次 ? Servlet 容器将通过 FilterConfig 对象向过滤器传递其 配置信息 ? 每个过滤器都有一个 FilterConfig 与其对应 40 过 滤 器 doFilter 方法 ? 过滤器被调用时执行该方法 ? doFilter 方法与 Ser
您可能关注的文档
- 第7课时 亿以上数的读写法习题课件.ppt
- 2020第8课古代中国的发明和发现.ppt
- 2020第9单元加法和减法.ppt
- 2020第9章羧酸及衍生物习题答案.ppt
- 2020第9课 辉煌灿烂的文学.ppt
- 第9课时 三位数除以一位数商末尾有0的除法习题课件.ppt
- 第一单元幼儿园班级管理概述.ppt
- 第一章 园林植物及其生长发育.ppt
- 第一章 第一节 元素周期表第3课时.ppt
- 2020第一章植物胚胎学的发展和成就.ppt
- 2022年部编人教版九年级数学上册期末考试题及答案【最新】.doc
- 人教部编版四年级数学(上册)期末质量分析卷及答案.doc
- 人教版一年级科学下册期中试卷及答案【一套】.doc
- 2023年人教版九年级地理(上册)期末考试卷及答案.doc
- 2022-2023年人教版七年级数学下册期中测试卷及答案【全面】.doc
- 苏教版五年级《数学》下册全单元测试题【附答案】.docx
- 人教版三年级语文上册期末考试卷及答案【全面】.doc
- 部编版五年级数学下册期中考试题及答案【完美版】.doc
- 2022年部编版六年级数学上册期末试卷加答案.doc
- 2021—2022年部编人教版三年级语文上册期末试卷(参考答案).doc
文档评论(0)