Java设计模式,命令模式(Command)
Monday, July 17, 2017
8:26 AM
命令模式又称为动作(Action)模式、事务(transaction)模式,将一个请求封装为一个对象,以便使用不同的请求、日志、队列等来参数化其他对象。命令模式也支持撤销的操作。
评论中有看到需要思维导图的,这样吧,点赞、评论后私信我,我给你发,内容包括Java基础、javaweb、5个框架的思维导图。这是一份非常详尽细致的学习路线图,不像别的图一样泛泛而论,涉及到Java学习的每一个知识点。对于不知道Java怎么学、怎么样去学Java比较省时省力的朋友,我想会很有帮助。

java设计模式思维导图
命令模式结构
- Command抽象命令类
- CocreteCommand具体命令类
-Invoker调用者/请求者(老板)
- 请求的发送者,它通过命令对象来执行请求。
- 一个调用者并不需要在设计时确定其接收者,因此他只与抽象命令类存在联系。(老板指示部门去完成工作,但具体是哪个员工去做,老板不管)
- Receiver接收者(具体执行任务的员工)
- 接收者执行与请求相关的操作,具体实现对请求的业务处理。
- Client客户类(下订单的客户)
- 在客户类中需要创建调用者对象、具体命令类对象,在创建命令对象时指定对应的接收者。
- 发送者和接收者之间没有直接关系,都通过命令对象间接调用。

相关类图
开发中常见的场景
- Struts2中,action的整个调用过程中就有命令模式。
- 数据库事务机制的底层实现。
- 命令的撤销和恢复。
代码实现



已使用 Microsoft OneNote 2016 创建。
