Mybatis筆記 05 快取機制

2021-10-10 10:14:12 字數 2472 閱讀 3088

二級快取又叫全域性快取,是namespace級別的快取,乙個namespace對應乙個二級快取

namespace

=>

eviction

="fifo"

flushinterval

="60000"

readonly

="false"

size

="1024"

type="

"/>

>

匯入需要的jar包

>

>

>

net.sf.ehcachegroupid

>

>

ehcache-coreartifactid

>

>

2.6.8version

>

dependency

>

>

>

org.mybatis.cachesgroupid

>

>

mybatis-ehcacheartifactid

>

>

1.0.3version

>

dependency

>

>

>

org.slf4jgroupid

>

>

slf4j-log4j12artifactid

>

>

1.7.25version

>

dependency

>

>

>

log4jgroupid

>

>

log4jartifactid

>

>

1.2.17version

>

dependency

>

>

>

org.slf4jgroupid

>

>

slf4j-apiartifactid

>

>

1.7.25version

>

dependency

>

>

>

org.slf4jgroupid

>

>

slf4j-nopartifactid

>

>

1.7.25version

>

dependency

>

>

>

org.slf4jgroupid

>

>

slf4j-******artifactid

>

>

1.7.5version

>

dependency

>

dependencies

>

namespace

=>

type

="org.mybatis.caches.ehcache.ehcachecache"

/>

>

namespace

=>

namespace

=/>

>

ehcache.xml配置檔案

<?xml version="1.0" encoding="utf-8"?>

xmlns:xsi

=""xsi:nonamespaceschemalocation

="">

path

="d:\ehcache"

/>

maxelementsinmemory

="10000"

maxelementsondisk

="10000000"

eternal

="false"

overflowtodisk

="true"

timetoidleseconds

="120"

timetoliveseconds

="120"

diskexpirythreadintervalseconds

="120"

memorystoreevictionpolicy

="lru"

>

defaultcache

>

ehcache

>

屬性說明:

必需要配置的屬性

可選的屬性:

如果ehcache.xml檔案報錯,可嘗試的解決方法

開啟 settings - languages&frameworks - schemas and dtds,新增位址

參考:idea中新建ehcache.xml檔案報錯

mybatis快取機制

mybatis和hibernate一樣,也提供了一二級快取。若存在一二級快取,則資料不會去資料庫互動,而是去記憶體中獲取。一級快取是sqlsession級別的快取。在運算元據庫時需要構造sqlsession物件,在物件中有乙個資料結構 一般來說是hashmap 來儲存快取資料。不同的sqlsessi...

MyBatis 快取機制

mybatis 提供了查詢快取來獲取資料,以提高查詢的效能。mybatis 的快取分為一級快取和二級快取。1 一級快取一級快取是 sqlsession 級別的快取,是基於 hashmap 的本地快取。不同的 sqlsession 之間的快取資料區域互不影響。當同乙個 sqlsession 執行兩次相...

Mybatis 快取機制

查詢快取主要是為了提高查詢訪問速度,即當使用者執行一次查詢後,會將該資料結果放到快取中,當下次再執行此查詢時就不會訪問資料庫了而是直接從快取中獲取該資料。如果在快取中找到了資料那叫做命中。同一sqlsession 多次查詢同一sql時會使用快取 test public void testlocalc...