Filter 过滤器
一、Filter 什么是过滤器
1、Filter 过滤器它是 JavaWeb 的三大组件之一。三大组件分别是:Servlet 程序、Listener 监听器、Filter 过滤器
2、Filter 过滤器它是 JavaEE 的规范。也就是接口
3、Filter 过滤器它的作用是:拦截请求,过滤响应。
拦截请求常见的应用场景有: 权限检查 、日记操作 、事务管理 ……等等
二、Filter 过滤器的使用步骤:
1、编写一个类去实现 Filter 接口
public class AdminFilter implements Filter {
/***
* @Description: doFilter方法专门用于拦截请求(可以做权限检查),过滤响应。
* @Param: [servletRequest, servletResponse, filterChain]
* @return: void
*/
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
HttpSession session = httpServletRequest.getSession();
Object user = session.getAttribute("user");
//如果等于null,说明还没有登录。
if (user == null) {
//请求转发
servletRequest.getRequestDispatcher("/login.jsp").forward(servletRequest, servletRespo