当前位置: 首页 > news >正文

SSM--MyBatis框架之缓存

MyBatis框架之缓存

文章目录

  • MyBatis框架之缓存
    • 缓存
      • 一级缓存
      • 二级缓存

缓存

一级缓存

Mybatis对缓存提供支持,但是在没有配置的默认情况下,它只开启一级缓存,一级缓存只是相对 于同一个SqlSession而言。

所以在参数和SQL完全一样的情况下,我们使用同一个SqlSession对象调用一个Mapper方法,往往只执行一次SQL,因为使用SelSession第一次查询后,MyBatis会 将其放在缓存中,以后再查询的时候,如果没有声明需要刷新,并且缓存没有超时的情况下, SqlSession都会取出当前缓存的数据,而不会再次发送SQL到数据库。

二级缓存

MyBatis的二级缓存是Application级别的缓存,它可以提高对数据库查询的效率,以提高应用的性能。

  • 开启二级缓存

    • 配置文件mybatis-config.xml中加入

      <settings><!-- 开启二级缓存 --><setting name="cacheEnabled" value="true"/>
      </settings>
      
    • 在mapper.xml中开启二缓存,mapper.xml下的sql执行完成会存储到它的缓存区

      <cache eviction="FIFO" flushInterval="60000" size="512" readOnly="true"/>
      
      • 参数说明

        • eviction

          • LRU 最近最少使用的:移除最长时间不被使用的对象

          • FIFO 先进先出:按对象进入缓存的顺序来移除它们

          • SOFT 软引用:移除基于垃圾回收器状态和软引用规则的对象

          • WEAK 弱引用:更积极地移除基于垃圾收集器状态和弱引用规则的对象

        • flushInterval :刷新间隔,单位为毫秒

        • size :引用数目,默认值是1024

        • readOnly :只读,属性可以被设置为true或false

  • select,insert,update标签中的缓存属性

    • useCache=false 禁用二级缓存
    • flushCache=true 刷新缓存 ,一般用于insert,update
http://www.dtcms.com/a/583175.html

相关文章:

  • 网站建设及相关流程做网站哪家好
  • 淮海中路街道网站建设无线网络优化
  • 做自主外贸网站和后台费用多少做自我介绍的网站的图片素材
  • 做淘宝优惠券网站要多少钱桂林到阳朔怎么走最方便
  • 黄浦网站建设做兼职哪个网站比较好
  • 三维空间圆的方程
  • 福州制作网站企业单页营销网站怎么做
  • 网站建设网店名字为什么网站不见了
  • 苏州比较大的网站公司淘宝客手机网站搭建
  • 这个网站最近运转怎么样?安全性怎么样? 另外建设银行的网银能在这里存取款吗?济南网站定制制作
  • 大型网站建设的价格广州本地门户网站
  • HTML学习标签、属性统计
  • 保定做公司网站的保洁公司做网站有什么作用
  • 12.线程(二)
  • 时延估计算法ETDGE的解析
  • 推广 电子商务网站建设做公司官网要服务器吗
  • 北京人力资源网站如何做好一个外贸进网站的编辑
  • 基于PyQt5的AI文档处理工具
  • 如何优化wordpress网站站长工具查询域名
  • GRPO中的梯度裁剪原理细节
  • seo在线网站诊断推推蛙网站备案对网站负责人的要求
  • wordpress网站重定向循环网站建设怎么样工作室
  • STM32串口发送时使用奇偶校验学习感悟——Even(偶校验)
  • 畅想网络网站建设推广wordpress文章顺序
  • 网络营销 网站识图
  • 国外网站做淘宝客北京朝阳区建设工作办公网站
  • 扬州网站建设价格网络促销
  • 新手练习做网站哪个网站比较合适网站 多线
  • 学习日报 20251107|服务染色”和“灰度发布
  • 佛山电商网站制作团队静态网页设计用什么软件