责任链设计模式与应用:基于拦截器的责任链评估响应时间与性能表现
发布时间
阅读量:
阅读量
一、什么是责任链设计模式
1、什么是责任链设计模式?
责任链设计模式主要构成有抽象处理者、具体处理者、客户类,在处理请求的时候,将请求通过客户类发送至处理链路上,这样链路上所有处理对象都有机会处理请求,使发送者与接收者之间解耦。
见:
2、使用场景
采用责任链模式的优势:
- 实现了发送方与接收方处理类之间的解耦;
- 对每个处理类进行封装,满足最小化封装的设计理念;
- 允许灵活地增加处理类,并且可以调整各类之间的顺序,从而增强了系统的可维护性与扩展能力;
适用情境:
当请求到达时,若无法确定由哪个具体对象进行处理,或所有对象都需要参与处理时,可采用责任链模式。例如,在OA系统中,员工提交流程后,需依次经过HR、组长、部门负责人及公司高层审批。此时可通过责任链模式实现处理过程:将不同的处理对象(如HR、组长、部门负责人及公司高层)分别封装为独立的类,并将其组合成一条完整的处理链路。该链路可用于对员工提交的请求进行统一处理。
3、责任链模式与策略模式的区别
策略模式与责任链模式存在相似之处,二者均通过多个处理对象对同一请求进行处理。
二者的区别在于,策略模式能够根据具体情况选择特定的策略类来处理请求;而责任链模式则无法依据请求内容判断应由哪个处理类进行操作,必须依次将请求传递给链中的所有处
全部评论 (0)
还没有任何评论哟~
