Java EE 系统开发-过滤器.ppt

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
----过滤器--- 主讲:唐琳 AOP的定义: Aspect Oriented Programming的缩写,意思是面向方面编程。是消除代码重复的一种方法。 AOP与OOP: AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。OOP(面向对象)是解决静态的模型进行的设计. 而AOP则是对动态的,执行当中的动作进行的编程. 过滤器的作用: 统一的认证处理 对用户的请求作检查,作更精确的记录 监视或对用户所传递的参数作前置处理 。。。。。。 package demo1; import java.io.IOException; import javax.servlet.*; public class FirstFilter implements Filter{ public void destroy() { } public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { System.out.println(Begin filter.....); arg2.doFilter(arg0, arg1); System.out.println(End filter.....); } public void init(FilterConfig arg0) throws ServletException { } } filter filter-namefirst/filter-name filter-classdemo1.FirstFilter/filter-class /filter filter-mapping filter-namefirst/filter-name url-pattern/*/url-pattern /filter-mapping 定义了3个生命周期方法: init(FilterConfig): 这是Servlet过滤器的初始化方法,Servlet容器创建Servlet过滤器实例后将调用这个方法。这个方法中可以读取web.xml文件中的Servlet过滤器。 doFilter(ServletRequest,ServletReponse,FilterChain): 这个方法完成实际的过滤操作。当用户请求访问与过滤器关联的URL时,Servlet容器将先调用过滤器的doFilter方法。FilterChain参数用户访问后继过滤器。 destroy(): Servlet容器在销毁过滤器实例前调用该方法,在这个方法中可以释放Servlet过滤器占用的资源。(大多数情况用不到) filter filter-nameFilter的名字/filter-name filter-classFilter的类名称/filter-class init-param description描述信息可以省略或放在此位置/description param-name参数名称param-name param-value参数的值/param-value /init-param /filter filter-mapping filter-name Filter的名字/filter-name url-patternURL/url-pattern dispatcher/dispatcher filter-mapping 过滤器类完整的名字包括包名 初始化参数,可以是零对或多对 当用户请求的URL和指定的URL匹配时将触发过滤器工作 可以是零对或多对 值为:REQUEST|INCLUDE|FORWARD|ERROR 未设定时默认值为REQUEST 初始化参数的获取,在init方法中 值 = FilterConfig. getInitParameter(名) 请求方法: REQUEST:当用户直接对网页做出请求的动作时,会通过此Filter。 FORWARD:当用户的请求是通过RequestDispatcher的forward()方法时,会通过此Filter。 INCLUDE:当用户的请求是通过RequestDispatcher的include()方法时,会通过此Filter。 ERROR:当用户的请求是通过错误机制处理的时候,会通过此Filter。错误机制处理 web.xml中可以配置多个过滤器,过滤器链的执行顺序跟web.xml配置的顺序相同。称之为串联过滤器 Web客户 Servlet 的service方法

文档评论(0)

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

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

1亿VIP精品文档

相关文档