-
Filter表示过滤器,是JavaWeb 三大组件之一(Servlet,Filter,Listener)
-
过滤器可以把对资源的请求拦截下来,从而实现一些特殊的功能。
-
过滤器一般完成一些通用的操作,比如:权限控制,统一编码处理,敏感字符处理等。
-
定义一个类,实现implements Filter
在类上添加注解@WebFilter
在doFilter中输出 chain.doFilter(request,response)
-
Filter 可以根据需求,配置不同的拦截资源路径
1.拦截具体的资源:/index.jsp
2.目录拦截:/user/ *,访问/user下的所有资源都会被拦截
3.后缀名拦截:* .jsp:访问后缀名为jsp的资源,都会被拦截
4.拦截所有: /* :访问所有资源,都会被拦截
package com.yang.web.filter;
import javax.servlet.*;
import javax.servlet.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.IOException;
//加注解
Listener
-
listener : 表示监听器,是JavaWeb三大组件之一。
-
在application,session,request三个对象创建,销毁或者往其中添加,修改,删除属性时自动执行代码的功能组件。
-
分类:
*ServletContext 监听
1. ServletContextListener 用于对ServletContext对象进行监听(创建,销毁)
*Session监听
*Request监听
package com.yang.web.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
//加注解