mybatis 缓存

一级缓存:myBatis自带,不需要手动配置

        缓存的是sql语句,只要保证在同一个链接,查询同一个依据,MyBatis只会在第一次访问数据库,后面的会直接读取缓存中的sql语句。

二级缓存:需要手动配置

        缓存的是数据,但要保证在同一工厂,可以跨链接使用,只要保证数据相同,就算使用新连接也不会读取数据库数据,而是从内存中读取。一般是对长时间不变更的sql语句使用,经常变更的数据不要使用缓存,有可能会读取到脏数据。

配置步骤:

        1、先在主配置文件中开启二级缓存

                settings节点中:<setting name="cacheEnabled" value="true"/>

                要在properties数据库配置下放置。

2、在映射文件中添加缓存支持

          全写:<cache eviction="FIFO" flushInterval="60000" size="512" readOnly="true"/>

          简写:<cache/>

        注意:一定要写在mapper根标签下第一行

               全写的属性都是默认值,所以简写全写效果一样

3、在映射文件中,对select节点添加使用或不适用缓存

                配置 useCache="true" 表示使用

                配置 useCache="false" 表示不适用

                                                                mapper文件中

                                                                 主配置文件中

注意:如果如上一样配置还出错,可以在关联实体类实现

implements java.io.Serializable

这个接口

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值