一、Web过滤器工作原理
用户发送请求-----》过滤器判断请求是否合法-----》(合法)访问服务器资源
-----》(不合法)请求重定向或转发到其它页面
过滤器的判断在doFilter方法中进行(3个参数)
1.发给服务器的请求
2.服务器的响应
3.过滤器链(用于调用doFilter(arg1,arg2)放行访问服务器)
多个过滤器:过滤器1放行前方法(执行请求重定向到过滤器2的url的代码)-----》过滤器2放行前方法(filterChain.doFilter()前)------》服务器响应-----》过滤器1放行后方法(执行请求重定向到过滤器2的url后的代码)-----》过滤器2放行后方法(filterChain.doFilter()后)
注解配置:
实例化Filter接口
@WebFilter中配置过滤器名、需要过滤的url地址、初始化过滤器所需要的字符集
@WebFilter(filterName = "LoginFilter",urlPatterns = {
"*"},initParams = {
@WebInitParam(name ="EXCLUDED_PAGES" , value = "login.jsp,/servlet/LoginServlet,/servlet/LogoutServlet,failure.jsp")} )
public
@WebFilter(filterName = "LoginFilter",urlPatterns = { "*"},initParams = { @WebInitParam(name ="EXCLUDED_PAGES" , value = "login.jsp,/servlet/LoginServlet,/servlet/LogoutServlet,failure.jsp")} )
public