版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、过 滤 器,目标,描述过滤器 理解过滤器生命周期 实现简单的过滤器,过滤器简介,过滤器是向 Web 应用程序的请求和响应处理添加功能的 Web 服务组件 过滤器的工作原理:,Web 资源,用户发送请求,过滤器将用户的请求发送至 Web 资源,资源将响应发送至过滤器,过滤器将 Web 资源的响应发送给用户,用户,过滤器,过滤器生命周期,过滤器生命周期的各个阶段:,实例化,初始化,过滤,销毁,Filter 接口,过滤器是一个对象,它根据用户的请求和资源的响应进行过滤 Filter 接口包含以下方法:,Filter 接口,init(),doFilter(),destroy(),过滤器链,Filter
2、Chain 接口用于调用过滤器链中的一系列过滤器,用户,过滤器1,过滤器2,过滤器3,Web 资源,过滤器链,FilterConfig,在初始化过程中,容器使用 FilterConfig 将信息传递给过滤器 FilterConfig 接口包含以下方法:,getFilterName(),getInitParameter(),getInitParameterNames(),getServletContext(),FilterConfig,过滤器定义,过滤器定义用于将过滤器名称与部署描述符中的特定类关联, FilterName ClassName ,指定过滤器的名称,指定类的名称,过滤器映射,使用
3、元素可将过滤器映射至 Web资源,如Servlet, MyFilter /servletname/* ,指定过滤器的名称,指定 Servlet 的名称,过滤器定义和映射,定义和映射过滤器 部署描述符中 和 元素的用法, FiltersModule FilterTimer filters.TimerFilter FilterTimer /* ,创建 Servlet,演示:示例 1,. out.println(LoggerServlet); out.println(); out.println(“简单过滤器 Servlet); String requestedUri = (String)reque
4、st.getAttribute(requestURI); out.println(“请求的 URI 为: +requestedUri); out.println(); out.println(); .,创建过滤器,演示:示例 2,FilterConfig、doFilter()、init() 和 destroy() 方法的用法,public class LoggerFilter extends HttpServlet implements Filter private FilterConfig filterConfig; public void init(FilterConfig filterC
5、onfig) throws ServletException this.filterConfig = filterConfig; public void doFilter(ServletRequest request, ServletResponse response,FilterChain filterChain) long startTime=System.currentTimeMillis(); String remoteAddress=request.getRemoteAddr(); String remoteHost=request.getRemoteHost(); HttpServ
6、letRequest myReq=(HttpServletRequest)request; String reqURI=myReq.getRequestURI(); System.out.println(reqURI);,创建 HTML 文件,演示:示例 3, 新文档 欢迎使用第一个过滤器示例 单击此处查看过滤器的效果 ,实现过滤器链过滤器1,演示:示例 4,public class SimpleFilter extends HttpServlet implements Filter private FilterConfig filterConfig; public void init(Fil
7、terConfig filterConfig) throws ServletException this.filterConfig = filterConfig; public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) try filterConfig.getServletContext().log(in SimpleFilter); System.out.println(in SimpleFilter); filterChain.doFilter(reque
8、st, response); filterConfig.getServletContext().log(Getting out of SimpleFilter); System.out.println(Getting out of SimpleFilter); catch (ServletException sx) ,演示:示例 5,实现过滤器链过滤器2,public class SimpleFilter2 extends HttpServlet implements Filter private FilterConfig filterConfig; public void doFilter(
9、ServletRequest request, ServletResponse response, FilterChain filterChain) try filterConfig.getServletContext().log(in SimpleFilter2); System.out.println(in SimpleFilter2); filterChain.doFilter(request, response); filterConfig.getServletContext().log(Getting out of SimpleFilter2); System.out.println
10、(Getting out of SimpleFilter2); catch (ServletException sx) ,实现过滤器链web.xml, simplefilter myfilter.SimpleFilter simplefilter /* simplefilter2 myfilter.SimpleFilter2 simplefilter2 /* ,实现过滤器链, 欢迎访问过滤器链演示程序! ,创建一个html文件作为Web资源,总结,过滤器是 Web 服务组件 过滤器可以访问客户端输入的请求和 Web 资源输出的响应 过滤器定义用于将过滤器名称与特定的类关联在一起 过滤器映射用于将过滤器映射至 Web 资源 Fil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市贫困群体对政治稳定的影响及化解策略研究
- 城市生活垃圾堆场下受污染软弱土特性及影响机制研究
- 城市排水系统对污水厂进水主要污染物浓度的影响及优化策略研究
- 2025年城市旅游资源利用评估可行性研究报告
- 企业数据资产化深度路径研究综述
- 宁夏西夏 2026 年化工泵阀检修岗岗前安全考卷 招聘 26 人
- 内蒙古乌审旗 2026 年煤化工水处理主管岗安全考卷 招聘 15 人
- 内蒙古额尔古纳 2026 年边境化工仓储管理岗安全考卷 招聘 15 人
- 辽宁宽甸 2026 年沿江化工园区管控岗岗前安全考卷 招聘 18 人
- 江苏泗洪 2026 年煤化工原料输送岗岗前安全考卷 招聘 26 人题型大全
- 2026年工会社会工作者招聘笔试题目及答案
- 《建筑新能源应用设计规范》DB11T 1774-2026
- 4.6.4 激素调节 课件(共20张+内嵌视频3个)生物学人教版(2024)八年级上册
- 2026年秋新教材版人教版五年级上册小学数学教学计划
- 2026年中国老挝磨憨一磨丁经济合作区管委会(35人)考试备考试题及答案详解
- UL 50E 中文版 电气外壳环境防护性能标准
- 《智能信息检索与生成式AI应用》课件-项目2:学术文献检索
- 施工现场防火材料、耐火构配件、消防设备设施进场质量管理制度2026db
- 2026新教材人教版九年级上册英语:各单元话题作文指导(写作模板+满分范文)
- 《深度学习与神经网络》全套教学课件
- 大型发电厂和变电站接地网状态评估报告
评论
0/150
提交评论