这篇文章主要介绍“web职责链模式由哪些部分组成”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“web职责链模式由哪些部分组成”文章能帮助大家解决问题。
适用性
职责链模式适用于以下情况:
•有多个对象可以处理一个请求,哪个对象处理该请求由对象自己决定。
•某个对象在处理请求的同时,也可以决定是否向后续的对象传递该请求。
结构
参与者
• Handler
— 定义一个处理请求的接口。
— 管理后继节点(多个节点级联之后形成后继链条)
• ConcreteHandler
— 可以选择是否处理收到的请求。
— 可以选择是否将请求传递给后继者。
— 一般来讲处理和向后续传递是互斥的,但这并不是职责链本身的要求。
• Client
—请求的提出者。
一种可能的对象结构如下图:
需要注意的是:实际的应用中,只要请求的传播途径形成链式结构即可。数据结构本身不一定如此。
协作
客户提出的请求沿着链状途径传播,链上的节点决定是处理还是向后传播该请求。
效果
请求的提出者不用关心哪个对象会处理请求,甚至不需要知道是否有对象会处理该请求。
是否处理某个请求由传播链上的节点决定。因此可以通过改变传播途径上节点的处理内容或者直接替换节点来改变请求的处理过程。而且无论哪种方式都可以在程序运行时完成。
虽然职责链模式可以极大地提高请求处理的灵活性,但是这种灵活性的反面是就是不确定性。客户在发出请求的时候甚至不知道是否有对象会处理该请求。如果某些请求必须要处理,就需要在生成数据结构时保证这一点。当然了,实际上是否有对象处理该请求是可以通过返回值来确认的。
关于“web职责链模式由哪些部分组成”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。