Java E 系统开发-过滤器.ppt
文本预览下载声明
----过滤器---;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过滤器占用的资源。(大多数情况用不到)
;;;web.xml中可以配置多个过滤器,过滤器链的执行顺序跟web.xml配置的顺序相同。称之为串联过滤器;示例1:
用过滤器来解决中文乱码问题(限post方式请求)(代码略)
示例2:
用过滤器来完成统一身份验证(代码略);配置简单的过滤器
实际应用操作
显示全部