mybatis缓存介绍
admin
2024-02-13 15:05:01
0

缓存介绍

MyBatis当中的缓存是有一级缓存和二级缓存。一级缓存默认开启。二级缓存需要手工开启。

一级缓存

  • 一级缓存是默认开启的,且 SqlSession 级别的,也就是通过同一个 SqlSession 查询的数据会被缓存,下次查询相同的数据,就会从缓存中直接获取,不会从数据库重新访问

二级缓存

  • 二级缓存是 SqlSessionFactory 级别,通过同一个SqlSessionFactory创建的SqlSession查询的结果会被缓存;此后若再次执行相同的查询语句,结果就会从缓存中获取

开启方法

二级缓存开启的条件

在核心配置文件中,设置全局配置属性cacheEnabled=“true”,默认为true,不需要设置

在映射文件中设置标签

二级缓存必须在SqlSession关闭或提交之后有效

查询的数据所转换的实体类类型必须实现序列化 Serializable 的接口

设置方法

>cache 标签的相关属性:

eviction属性:缓存回收策略

LRU(Least Recently Used) – 最近最少使用的:移除最长时间不被使用的对象。

FIFO(First in First out) – 先进先出:按对象进入缓存的顺序来移除它们。

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

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

默认的是 LRU

flushInterval属性:刷新间隔,单位毫秒

默认情况是不设置,也就是没有刷新间隔,缓存仅仅调用语句(增删改)时刷新

size属性:引用数目,正整数

代表缓存最多可以存储多少个对象,太大容易导致内存溢出

readOnly属性:只读,true/false

true:只读缓存;会给所有调用者返回缓存对象的相同实例(将缓存的数据直接返回给调用者)。因此这些对象不能被修改。这提供了很重要的性能优势。

false:读写缓存;会返回缓存对象的拷贝(通过序列化)。这会慢一些,但是安全,因此默认是false

缓存执行顺序

若一级缓存和二级缓存都开启,则先查询二级缓存,因为二级缓存中可能会有其他程序已经查出来的数据,可以拿来直接使用

如果二级缓存没有命中,再查询一级缓存

如果一级缓存也没有命中,则查询数据库

SqlSession关闭之前,数据默认保存在一级缓存之中,但SqlSession关闭之后,一级缓存中的数据会写入二级缓存

相关内容

热门资讯

欧盟开查马斯克旗下聊天机器人 欧盟委员会今天1月26日宣布,依据《数字服务法案》,对美国企业家马斯克旗下社交平台X启动一项新的正式...
中国证监会发布《公开募集证券投... 为落实《推动公募基金高质量发展行动方案》,坚持以投资者为本,规范公募基金业绩比较基准的选取和使用,切...
2025业绩快报来了!招行、兴... 2025年上市业绩快报正在密集披露。 截至目前,已有多家A股上市银行发布2025年业绩快报,包括、、...
国企董事长殴打他人被拘留,官方... 今早(27日),山西太原市国资委发布情况通报: 近日,有媒体反映太原酒厂董事长荣某锋涉嫌殴打他人并被...
1年融资30亿,曦望GPU真猛... 文:韦亚军 摄影:Bob 其背后资方阵容相当豪华,至少涵盖25家知名的VC/PE机构、大厂以及国资...
多地专卖店暂停马茅提货!错版乌... 本文来源:时代财经 作者:林心林 一笔之差,“意外”搅动了茅台生肖酒市场。 图源:贵州茅台官微 ...
两月股价增两倍,太空光伏点燃迈... 当前市场上HJT电池设备供应商较为稀缺,迈为股份受到市场热捧。 图片来源:界面图库 图片来源:W...
【立方早知道】特朗普宣布:加征... 第 806 期 2026-01-27 焦点事件 紫金矿业拟280亿元收购联合黄金100%股权 ...
向渠道要效率,理想汽车:将关闭... 根据第一财经等媒体近日报道,理想汽车将关闭部分门店,主要涉及部分能效低、扩张期布局的门店。1月26日...
男人必看:守护“生命腺”,这4... 对于男性而言,前列腺就像一颗“隐形的定时炸弹”,看似默默无闻,却承载着排尿、生殖等关键生理功能,是维...
广合科技预盈约10亿股价创新高... 来源:长江商报 长江商报消息 ●长江商报记者 沈右荣 突破百元,A股上市不到两年的广合科技(001...
特朗普称提高对韩国多种商品关税... 当地时间1月26日,美国总统特朗普在其社交平台“真实社交”发文表示,由于韩国国会未批准并落实此前与美...
金价狂飙带火银行保管箱!租金翻... 封面新闻记者 邹阿江 杨芮雯 最近金价涨“疯”了。国际贵金属价格连创新高,今日早间,黄金、白银、铂金...
必须做人形机器人!李想召开全员... 看来 2026 年,无论是科技公司,还是汽车公司,都在开始往 AI 赛道发力。 这不,理想汽车也来了...
埃夫特:预计2025年度净利润... 每经AI快讯,埃夫特1月26日晚间发布业绩预告,预计2025年年度实现归属于母公司所有者的净利润与上...
6天破6关 黄金急涨三问 伦敦现货黄金走势图(单位:美元/盎司)   郭晨凯 制图   美元指数走势图   美元走弱为金价上涨...
为什么很多企业做了GEO却没效... 2024 年开始,越来越多企业意识到: 流量不再只来自搜索排名,而来自 AI 的“回答权”。 于是,...
北京国丹医院祃开芬:白癜风与头... 头皮是白癜风常见发病部位之一,因被发丝覆盖易被忽视,且受洗护、摩擦等影响护理难度较高,科学养护头皮能...
上期所调整白银、锡期货相关合约... 【上期所调整白银、锡期货相关合约交易限额】财联社1月26日电,上期所发布通知,根据《上海期货交易所风...