设计模式(30) -- 责任链模式

简介: 设计模式(30) -- 责任链模式

需求


1dc618a0ed9580ce8bfa6facb208c08f.png


传统方式解决方案


5d4c6812c8535adbb050f4ddf2e1bce8.png46a9d80a6e05e4e3b19d57a0ee70bcdf.png


职责链模式


基本案例


66ba272a0bfc97be54a5fa679e3d5482.png


类图


1dc618a0ed9580ce8bfa6facb208c08f.png


职责链模式解决OA系统采购审批


5d4c6812c8535adbb050f4ddf2e1bce8.png


类图


46a9d80a6e05e4e3b19d57a0ee70bcdf.png


代码


PurchaseRequest

1dc618a0ed9580ce8bfa6facb208c08f.png

Approver

5d4c6812c8535adbb050f4ddf2e1bce8.png

DepartmentApprover

46a9d80a6e05e4e3b19d57a0ee70bcdf.png

CollegeApprover

66ba272a0bfc97be54a5fa679e3d5482.png

ViceSchoolMasterApprover

88b9988b40447cb37c7e3c492d49867f.png

SchoolMasterApprover

80308c27701d3aead18db6c7b167f308.png

Client

1014213c4196c8798c8417b952a8a253.png

运行结果:

20190416165655169.png


职责链模式在 SpringMVC 框架应用


1dc618a0ed9580ce8bfa6facb208c08f.png


职责链模式的注意事项和细节


5d4c6812c8535adbb050f4ddf2e1bce8.png




相关文章
|
6月前
|
设计模式 Java
【设计模式系列笔记】责任链模式
责任链模式是一种行为设计模式,它允许你将请求沿着处理者链进行传递,直到有一个处理者能够处理它。每个处理者都有一个对下一个处理者的引用。责任链模式常用于处理请求的场景,例如在一个请求需要经过多个步骤或者多个对象来处理的情况下。
77 0
|
6月前
|
设计模式 Java
【设计模式】责任链模式
【设计模式】责任链模式
|
6月前
|
设计模式
【设计模式】责任链模式
【1月更文挑战第27天】【设计模式】责任链模式
|
25天前
|
设计模式 JavaScript Scala
Kotlin - 改良设计模式 - 责任链模式
Kotlin - 改良设计模式 - 责任链模式
54 9
|
13天前
|
设计模式 JavaScript Scala
Kotlin教程笔记(55) - 改良设计模式 - 责任链模式
Kotlin教程笔记(55) - 改良设计模式 - 责任链模式
33 0
|
24天前
|
设计模式 JavaScript Scala
Kotlin - 改良设计模式 - 责任链模式
本教程详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速上手Kotlin的读者,推荐查阅“简洁”系列教程。本文通过学生会经费申请的例子,介绍了责任链模式及其在Kotlin中的实现,并使用偏函数进行了改进,使代码更加简洁和灵活。
12 0
|
27天前
|
设计模式 JavaScript Scala
Kotlin - 改良设计模式 - 责任链模式
Kotlin - 改良设计模式 - 责任链模式
37 0
|
1月前
|
设计模式 JavaScript Scala
Kotlin学习笔记 - 改良设计模式 - 责任链模式
Kotlin学习笔记 - 改良设计模式 - 责任链模式
42 0
|
2月前
|
设计模式 缓存 监控
Java设计模式-责任链模式(17)
Java设计模式-责任链模式(17)
|
1月前
|
设计模式 JavaScript Scala
Kotlin教程笔记(55) - 改良设计模式 - 责任链模式
Kotlin教程笔记(55) - 改良设计模式 - 责任链模式
26 0