1、责任链模式
自己的理解:避免发生方与接收方解耦
优点:①降低发送方与接收方的耦合
②简化他们对象
③方便扩展新增 处理者
缺点:①不方便排错
②性能问题,且使用不当容易搞出死循环
应用场景:拦截器 Interceptor和过滤器 filter:符合模式的进行拦截或者过滤到,然后就进行处理。(拦截器和过滤器的区别:拦截器是动态代理实现,过滤器是函数回调实现:容器初始化时调用一次初始化,容器销毁时调用销毁一次)
过滤器举例:
@Slf4j
@WebFilter(filterName = "parameterFilter", urlPatterns = "/user/*") //拦截模式匹配
public class ParameterFilter implements Filter {//继承Filter接口
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpServletRequest = (HttpServletRequest) request;
//对请求