程序中并没有走缓存,为什么执行时间短了
1、mysql缓存关闭
2、mybatis 二级缓存未开启
虽然二级缓存开关是默认开启的,但是要通过注解@options
或者xml</cache>
进行开启,才算打开。
所以这里没打开
3、mybatis一级缓存默认开启了但是没使用
在执行的时候观察sqlsession是否是同一个
因为是同一个testmapper,所以是同一个sqlsessiontemplate
但是sqlsession 第一个为
第二个为
所以,无法使用一级缓存
但是mysql三次执行的时间不一样(都是limit offset 的select 语句,total不到1w行)
同时也想到了os的page case,让第一个加载后,让程序睡5分钟,在执行后面两个,效果也是后面的快一点。
https://cloud.tencent.com/developer/article/1011927
这是一个记录问题的文章。