JDBCTemplate实现原理剖析

模版方法和回调机制

模版方法

业务流程包含固定步骤(步骤即业务流程的执行框架)
不同场景中,具体步骤不同

回调机制

回调机制特点

  • 回调任务执行不会阻塞,异步执行效果
  • 是实现扩展性的一种简单而直接的模式
    回调是主动触发的,且有选择性(可触发可不触发)触发(简单,直接)

JDBC API到JDBCTemplate的演变

JDBC API的代码重复性

JDBC API中使用模版方法模式

定义模版方法,并将处理resultSet部分抽象为抽象方法

问题

抽象类的本质

  • 需要创建不同的子类实现(每个实体类的数据处理类都需要实现自己的resultSet处理部分)
  • 如果多个抽象方法,即使没有用也需要实现

解决方法:回调机制替代抽象方法,从而提高系统扩展性

JDBC API中添加回调机制

使用匿名类实现回调机制