Tom小猫,让我看清你的五脏六腑4(转)
2007-01-29 19:53
Servlet过滤器
在Java Servlet2.3中定义,能够对Servlet容器的请求和响应对象进行检查和修改。所有的过滤器类都必须实现javax.servlet.Filter接口,其中有三个需要实现的方法:
init(FilterConfig)-一个初始化方法,Servlet容器创建过滤器类后将调用这个方法,在此方法中可以读取web.xml文件中的Servlet过滤器的初始化参数。
doFilter(ServletRequest,ServletResponse,FilterChain)-实际的过滤操作,FilterChain参数用于访问后面的过滤器。
destroy()-用来释放某些Servlet过滤器占用的资源。
下面是一个解决中文乱码问题很有用的一个过滤器:













发布Servlet过滤器-在web.xml在文件中加入<filter>元素和<filter-mapping>元素
下面的例子中Servlet过滤器会过滤所有的URL:










串连Servlet过滤器
多个Servlet过滤器可以协同工作,Servlet容器将根据它们在web.xml中定义的先后顺序,依次调用它们的doFilter()方法。
工作流程如下:
Code1; // 表示调用chain.doFilter()前面的代码
chain.doFilter(); // 表示调用下一个过滤器的doFilter()方法
Code2; // 表示调用chain.doFilter()后面的代码