定义
在职责链模式中,多个处理器(也就是刚刚定义中说的“接收对象”)依次处理同一个请求。一个请求先经过 A 处理器处理,然后再把请求传递给 B 处理器,B 处理器处理完后再传递给 C 处理器,以此类推,形成一个链条。链条上的每个处理器各自承担各自的处理职责,所以叫作职责链模式。
参考文献
62 | 职责链模式(上):如何实现可灵活扩展算法的敏感信息过滤框架?<br>
63 | 职责链模式(下):框架中常用的过滤器、拦截器是如何实现的?<br>
实现方式
链表的方式
代码实现见项目,路径为:com.geekbang.demo.behavior.handler.base1
数组的方式
代码实现见项目,路径为:com.geekbang.demo.behavior.handler.base2
应用场景
文字审核
Servlet 的Filter过滤器
SpringMVC的Interceptor<br>