我明天要演讲一个filter的PPT 但是我没接触过filter,网上对filter的介绍 是在太抽象,,
能不能请各位大虾,说说filter的用法(尽量说的简单点)
1:如何调用(我所知道的就只有创建一个类,然后实现filter接口,然后会有3个方法,但实际上在网页转到servlet的时候怎么样调用filter我就不知道了);2:dofilter()中的方法有那些比较实用的?(如何实现在请求和响应的同时双向截取?);
能不能请各位大虾,说说filter的用法(尽量说的简单点)
1:如何调用(我所知道的就只有创建一个类,然后实现filter接口,然后会有3个方法,但实际上在网页转到servlet的时候怎么样调用filter我就不知道了);2:dofilter()中的方法有那些比较实用的?(如何实现在请求和响应的同时双向截取?);
个人认为要用到Spring的拦截器,通知类~!
web.xml文件配置
<filter>
<filter-name>encoding</filter-name><!--与下面名称一致-->
<filter-class>com.soft.util.EncodFilter</filter-class><!--此处为自己写的过滤字符集的类-->
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern><!--此处为过滤此程序中所有的网页-->
</filter-mapping>
EncodFilter.java类
三个方法的解说:
init()方法:当服务器启动时调用
destroy()方法:当服务器关闭时调用
doFilter()方法:当有请求时调用
//
public class condeFilter implements Filter{
public void init(){}
public void doFilter(sevletRequest req,servletResponse res, FilterChain chain)throws IoException,ServletException
{
req.setCharacterEncoding("gbk");
chain.doFilter(req,res);//将请求继续传递
}public void destroy(){}
}它还可以用 <init-param> 配置一些初始的参数,读取哪些参数时,用FilterConfig对象的getInitParameter("参数name")读取
每次用它就到这,再深入的我就不知道了
*表示所有,任何一个请求都会进入filter
*你可以改成别的!
进入filter根据这个url-pattern来的!