我明天要演讲一个filter的PPT  但是我没接触过filter,网上对filter的介绍 是在太抽象,,
 能不能请各位大虾,说说filter的用法(尽量说的简单点)
1:如何调用(我所知道的就只有创建一个类,然后实现filter接口,然后会有3个方法,但实际上在网页转到servlet的时候怎么样调用filter我就不知道了);2:dofilter()中的方法有那些比较实用的?(如何实现在请求和响应的同时双向截取?);

解决方案 »

  1.   

    双向截取,Filter做不到!
    个人认为要用到Spring的拦截器,通知类~!
      

  2.   

      使用Filter: 自定义的过滤器
          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")读取  
     每次用它就到这,再深入的我就不知道了
      

  3.   

    那么如何调用呢,,网页跳转的时候 会自动进入这个filter类吗? 还是要设置什么 才能进来这个地方
      

  4.   

    在web.xml时配置<url-pattern>/*</url-pattern>
    *表示所有,任何一个请求都会进入filter
    *你可以改成别的!
    进入filter根据这个url-pattern来的!