过滤器(web基础学习笔记二十一)

一、过滤器简介

二、在Eclipse中创建过滤器

三、使用过滤器设置全部web字符编码

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        // TODO Auto-generated method stub
        // place your code here

        // pass the request along the filter chain
        //请求的编码 
        request.setCharacterEncoding("utf-8");
        chain.doFilter(request, response);
        //响应的编码
        response.setCharacterEncoding("utf-8");
    }

使用过滤器设置后,就不需要在页面中再单独设置字符编码

Web.xml中设置

<filter>
    <display-name>CharacterEncodingFilter</display-name>
    <filter-name>CharacterEncodingFilter</filter-name>
    <filter-class>com.pb.news.web.filter.CharacterEncodingFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>CharacterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

<filter-name>用于为过滤器指定一个名字,该元素的内容不能为空。
  <filter-class>元素用于指定过滤器的完整的限定类名。
  <init-param>元素用于为过滤器指定初始化参数,它的子元素<param-name>指定参数的名字,<param-value>指定参数的值。

在过滤器中,可以使用FilterConfig接口对象来访问初始化参数。如果过滤器不需要指定初始化参数,那么<init-param>元素可以不配置。

使用Eclipse创建过滤器后会自动在web.xml中自动增加以上内容,也可以手动增加

四、过滤器的使用步骤

五、过滤器生命周期

六、可以有多个过滤器--形成过滤链

七、过滤器应用场合

原文地址:https://www.cnblogs.com/liunanjava/p/4269892.html