1. 概念:
* web中的过滤器:当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的功能。比如说我们很多服务器资源需要登录后才能访问,如果在每个资源里面都判断是否登录,会很麻烦,我们可以将判断是否登录统一放到过滤器中,这样就会很方便。
* 过滤器的作用:
* 一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符过滤...
2. 使用步骤:
(1). 定义一个类,实现接口Filter(注意:我们要选中javax.servlet.Filter这个filter包)
(2). 复写方法该接口中的方法。
(3). 配置拦截路径,有如下两种配置方式:
a. 在web.xml文件中配置
b. 使用注解@WebFilter()进行配置
3、代码演示:
@WebFilter("/*")//访问所有资源之前,都会执行该过滤器
public class FilterDemo1 implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("filterDemo1被执行了....");
//将拦截的资源申请放行
filterChain.doFilter(servletRequest,servletResponse);
}
@Override
public void destroy() {
}
}