package com.an.tomcatservlet; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import java.io.IOException; /** * @author apy * @description * @date 2021/10/21 16:58 */ public class MyFilter implements Filter { public void init(FilterConfig filterConfig) throws ServletException { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { chain.doFilter(request, response); } public void destroy() { } /** * 【servlet Filter】 * why? * 解决 客户端多个请求 做相同的事情; * * what? * 对 web请求、web响应 的头属性和内容 进行操作的 特殊 web组件; * * How? * 创建普通Java类,实现javax.servlet.Filter接口; * 在web.xml中配置filter * * 生命周期: * 创建:servlet容器启动创建,可以通过init方法自定义逻辑; * 响应:Filter的doFilter做处理; * 销毁:servlet容器关闭销毁,可以通过destroy方法自定义逻辑; * * FilterChain * 每个应用程序 可以 定义多个Filter; * 封装 应用程序中所有的Filter, 根据客户端请求 把符合规则的过滤器挨个执行; * * 在web.xml中可以 自定义 过滤器匹配规则; */ }