-
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;
//加注解
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!