设计模式之命令模式
一、基本介绍
在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时可以使用命令模式来设计。
命令模式将一个请求封装成一个对象,以便使用不同的参数来表示不同的请求,支持命令的撤销和恢复功能。
命令模式使得请求发送者和请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵活。
空命令也是一种设计模式,为我们省去了判空操作。
二、通用类图
Command命令角色:需要执行的所有命令都在这里,可以是接口或抽象类
ConcreteCommand: 将一个接受者对象与一个动作绑定,调用接受者相应的操作,实现 execute
Receiver接收者角色:该角色就是干活的角色,命令传递到这里是应该被执行的
Invoker调用者角色:接收到命令,并执行命令
三、代码演示
使用命令模式,完成智能家电项目。
四、在Spring框架JdbcTemplate中的使用