六、设计模式之模板模式

模板模式是执行的流程不能更改,但是流程中的某些细节是根据不同的场景而由用户自定义实现细节

例如JDBC的查询步骤:

  1. 获取连接
  2. 创建statement对象
  3. 设置参数
  4. 执行语句,并获取结果集
  5. 解析结果集
  6. 关闭结果集
  7. 关闭statement
  8. 关闭连接

我们可以发现,对于JDBC整个查询流程而言,1-8个步骤,每个步骤都是不能交换顺序的。同时获取连接,创建statement对象,设置参数,执行语句,关闭资源基本上,每一个SQL查询都是相同的。对于相同的代码,没有必要写多分,可以写成模板方法,多次调用。解析结果集这个过程呢,会因用户不同的查询而不同,所以这一步骤,可以交给用户自己来实现。

实现方式:

  1. 抽象类实现,解析结果集写成抽象方法,让用户来实现;
  2. 查询方法参数提供一个接口,让客户实现该接口,目的是为了让用户自定义结果集的解析,这种方式便于扩展。

原文地址:https://www.cnblogs.com/kancy/p/10231019.html