SpringBoot整合MyBatis:一级缓存的使用
在MyBatis中,一级缓存默认是打开的。为什么在Spring Boot整合MyBatis是,并没有看到一级缓存生效呢??
由于SpringBoot使用HikariPC,在执行一个任务时从HikariPool中获取一个SqlSession,但是当该操作完成就commit,
这就导致两次查询使用的不是同一个sqlSessioin,根据一级缓存的原理,它将永远不会生效。
当我们开启了事务,下一次查询也在同一个sqlSession中,第二次查询就命中缓存