目录
1. 功能
1.1 功能介绍
- 用来拦截传入的请求和传出的响应。
- 修改或以某种方式处理正在客户端和服务端之间交换的数据流。
1.2 使用方法
与使用Servlet类似,Filter是Java WEB提供的一个接口,开发者只需要自定义一个类并且实现该接口即可。
2. 配置
2.1 方法1 xml配置
xml
<filter>
<!-- 过滤器的名字 -->
<filter-name>character</filter-name>
<!-- 过滤器所对应的url -->
<filter-class>filter.CharacterFilter</filter-class>
</filter>
<!-- 过滤器映射 -->
<filter-mapping>
<filter-name>character</filter-name>
<url-pattern>/Login</url-pattern>
<url-pattern>/test</url-pattern>
</filter-mapping>
CharacterFilter
public class CharacterFilter implements Filter{
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
// TODO Auto-generated method stub
servletRequest.setCharacterEncoding("utf-8");
filterChain.doFilter(servletRequest, servletResponse);
}
}
注: doFilter方法中处理完业务逻辑之后必须添加filterChain.doFilter(servletRequest, servletResponse);
否则请求/响应无法向后传递,一直停留在过滤器中。
2.2 方法2 注解
@WebFilter(