介绍
执行器作为 DefaultSqlSession 一个成员变量,提供,改查,提交,回滚,关闭等操作。
层次结构
SimpleExecutor
最基础的简单执行器,也是默认的执行器,可以通过设置,来改变默认的执行器。
ReuseExecutor
执行器内会缓存预编译通过的 sql,并在接到相同的 sql 和执行请求的时候,从本地缓存中检索出之前已经执行过的内容并执行。这样就可以省略预编译过程的性能损耗。
BatchExecutor
用于一次性操作更新大量数据的场景。批处理执行器在用户查询场景的时候,和 simpleExecutor 是没有差别的。
CachingExecutor
这里是二级缓存,调用 query 方法时执行首先查询二级缓存,如果二级没有再查询一级缓存。二级缓存不存在的时候,委托给 Executor delegate 去数据库取,delegate 可以是上面任一的 SimpleExecutor、ReuseExecutor、BatchExecutor。