MyBatis的缓存配置(Cache) 一、MyBatis的Cache配置1、全局开关:默认是true,如果它配成false,其余各个Mapper XML文件配成支持cache也没用。 2、各个Mapper XML文件,默认是不采用cache。在配置文件
一、MyBatis的Cache配置 1、全局开关:默认是true,如果它配成false,其余各个Mapper XML文件配成支持cache也没用。2、各个Mapper XML文件,默认是不采用cache。在配置文件加一行就可以支持cache: 3、Mapper XML文件配置支持cache后,文件中所有的Mapper statement就支持了。此时要个别对待某条,需要: 二、注意的几个细节 1、如果readOnly为false,此时要结果集对象是可序列化的。 2、在SqlSession未关闭之前,如果对于同样条件进行重复查询,此时采用的是local session cache,而不是上面说的这些cache。 3、MyBatis缓存查询到的结果集对象,而非结果集数据,是将映射的PO对象集合缓存起来。 说意义不大是在于: a、面对一定规模的数据量,内置的cache方式就派不上用场了; b、对查询结果集做缓存并不是MyBatis框架擅长的,它专心做的应该是sql mapper。采用此框架的Application去构建缓存更合理,比如采用OSCache、Memcached啥的。