命令模式在 Spring 框架 JdbcTemplate 应用的源码分析
1、Spring 框架的 JdbcTemplate 就使用到了命令模式
2、代码分析:
3、模式角色分析说明
(1)StatementCallBack 接口,类似命令接口(Command)
(2)class QueryStatementCallBack implement StatementCallBack<T>,SqlProvider,匿名内部类,实现了命令接口,同时也充当命令接收者;
(3)命令调用者是 JdbcTemplate ,其中 execute(StatementCallback<T> action) 方法中,调用 action.doInStatement() 方法,不同的实现 StatementCallback 接口的对象,对应不同的 doInStatement 实现逻辑;
(4)另外实现 StatementCallback 命令接口的子类还有 QueryStatementCallback。