MyBatis 提供了三种类型的 Executor 执行器如下:
1) 简单执行器每次执行都创建一个新的 SQL 语句对象。
2) 重用执行器会缓存 Statement 。如果多次执行相同的 SQL 语句,它会重用 Statement ,而不是创建新的。
3) 批量执行器将所有的更新语句批量处理,直到调用 commit 或 close 方法时才提交到数据库。
区别总结如下:
简单执行器每次操作都创建新的 Statement;重用执行器缓存并重用 Statement;批量执行器同样重用 Statement 但会在执行多个更新语句时进行批处理。
适用场景如下:
1)简单执行器:适用于操作简单,没有大量重复 SQL 语句的场景。
2)重用执行器:适合重复执行相同 SQL 语句的情况,可以提高性能。
3)批量执行器:最适合批量数据处理,如批量插入或更新数据,可以减少提交次数,提高效率。