springboot開啟mybatis二級緩存的步驟詳解
我的項目版本號如下:
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.8</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.1</version> </dependency>
首先選一個緩存框架(EhCache )EhCache 是一個廣泛使用的開源 Java 分布式緩存庫,主要用于提高應(yīng)用程序的性能,減少數(shù)據(jù)庫訪問次數(shù),通過緩存頻繁讀取的數(shù)據(jù)來實現(xiàn)。它可以作為 Hibernate、Spring、MyBatis 等框架的緩存提供者,用于提升這些框架在數(shù)據(jù)處理方面的性能??梢跃彺鎭碜詳?shù)據(jù)庫的數(shù)據(jù),當(dāng)應(yīng)用程序需要這些數(shù)據(jù)時,可以直接從緩存中讀取,而不是每次都查詢數(shù)據(jù)庫。這減少了數(shù)據(jù)庫的訪問壓力和響應(yīng)時間。
第一步導(dǎo)入依賴
<!-- mybatis 二級緩存使用--> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.8</version> </dependency>
第二步編寫配置文件
src/main/resources
目錄下創(chuàng)建一個名為 ehcache.xml
的 EhCache 配置文件。這個文件用于定義緩存的具體參數(shù),例如緩存策略、生命周期等:
<?xml version="1.0" encoding="UTF-8"?> <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.ehcache.org/ehcache.xsd"> <cache name="default" maxEntriesLocalHeap="10000" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600" memoryStoreEvictionPolicy="LFU"> </cache> </ehcache>
第三步加注解
對于 Mapper 接口,可以通過在接口上添加 @CacheNamespace
注解開啟二級緩存
如下:
import org.apache.ibatis.annotations.CacheNamespace; import org.apache.ibatis.annotations.Mapper; @Mapper @CacheNamespace public interface YourMapper { // 方法定義 }
第四步修改配置文件
application.properties
spring.cache.type=ehcache spring.cache.ehcache.config=classpath:ehcache.xml
application.yml
spring: cache: type: ehcache ehcache: config: classpath:ehcache.xml
到此這篇關(guān)于springboot開啟mybatis二級緩存的步驟詳解的文章就介紹到這了,更多相關(guān)springboot開啟mybatis緩存內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring mail借助qq郵箱服務(wù)器發(fā)送郵件
這篇文章主要介紹了spring mail借助qq郵箱服務(wù)器發(fā)送郵件的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12@JsonProperty和@JSONField注解的區(qū)別解析(最新)
Jackson是一款優(yōu)秀的JSON解析庫,添加了依賴之后就可以使用對應(yīng)的注解,讓我們能夠自由的將Java對象和JSON做轉(zhuǎn)換,這篇文章主要介紹了@JsonProperty和@JSONField注解的區(qū)別,需要的朋友可以參考下2024-04-04一文深入理解Java中的java.lang.reflect.InvocationTargetException錯誤
這篇文章主要給大家介紹了關(guān)于Java中java.lang.reflect.InvocationTargetException錯誤的相關(guān)資料,java.lang.reflect.InvocationTargetException是Java中的一個異常類,它通常是由反射調(diào)用方法時拋出的異常,需要的朋友可以參考下2024-03-03java實現(xiàn)圖的鄰接表存儲結(jié)構(gòu)的兩種方式及實例應(yīng)用詳解
這篇文章主要介紹了java實現(xiàn)圖的鄰接表存儲結(jié)構(gòu)的兩種方式及實例應(yīng)用詳解,鄰接表構(gòu)建圖是必須需要一個Graph對象,也就是圖對象!該對象包含屬性有:頂點數(shù)、邊數(shù)以及圖的頂點集合,需要的朋友可以參考下2019-06-06SpringBoot 配合 SpringSecurity 實現(xiàn)自動登錄功能的代碼
這篇文章主要介紹了SpringBoot 配合 SpringSecurity 實現(xiàn)自動登錄功能的代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09Java線程同步機制_動力節(jié)點Java學(xué)院整理
在之前,已經(jīng)學(xué)習(xí)到了線程的創(chuàng)建和狀態(tài)控制,但是每個線程之間幾乎都沒有什么太大的聯(lián)系。可是有的時候,可能存在多個線程多同一個數(shù)據(jù)進行操作,這樣,可能就會引用各種奇怪的問題?,F(xiàn)在就來學(xué)習(xí)多線程對數(shù)據(jù)訪問的控制吧2017-05-05