EhCache是一個比較成熟的Java緩存框架,最早從hibernate發展而來, 是進程中的緩存系統,它提供了用內存,磁盤文件存儲,以及分布式存儲方式等多種靈活的cache管理方案,快速簡單。
Springboot對ehcache的使用非常支持,所以在Springboot中只需做些配置就可使用,且使用方式也簡易。
下面通過本文給大家介紹springboot ehcache 配置使用方法,具體內容如下所示:
1. pom 引入依賴
1
2
3
4
5
|
<!-- Ehcache --> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> </dependency> |
2.resources 目錄下直接放個文件ehcache.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<ehcache xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "http://ehcache.org/ehcache.xsd" updateCheck= "false" > <diskStore path= "java.io.tmpdir" /> <!--defaultCache:echcache的默認緩存策略 --> <defaultCache maxElementsInMemory= "10000" eternal= "false" timeToIdleSeconds= "120" timeToLiveSeconds= "120" maxElementsOnDisk= "10000000" diskExpiryThreadIntervalSeconds= "120" memoryStoreEvictionPolicy= "LRU" > <persistence strategy= "localTempSwap" /> </defaultCache> <!-- 菜單緩存策略 --> <cache name= "menucache" maxElementsInMemory= "10000" eternal= "false" timeToIdleSeconds= "120" timeToLiveSeconds= "120" maxElementsOnDisk= "10000000" diskExpiryThreadIntervalSeconds= "120" memoryStoreEvictionPolicy= "LRU" > <persistence strategy= "localTempSwap" /> </cache> </ehcache> |
3.在Service層 方法上加上注解
@CacheEvict(value="menucache", allEntries=true) ,更新緩存
@Cacheable(key="'menu-'+#parentId",value="menucache") 讀取緩存,"'menu-'+#parentId" 通配符,也可以直接寫死字符串
menucache 對應 上面 xmlname="menucache"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
/**刪除菜單 * @param MENU_ID * @www.fhadmin.org */ @CacheEvict (value= "menucache" , allEntries= true ) public void deleteMenuById(String MENU_ID) throws Exception{ this .cleanRedis(); menuMapper.deleteMenuById(MENU_ID); } /** * 通過ID獲取其子一級菜單 * @param parentId * @return * @www.fhadmin.org */ @Cacheable (key= "'menu-'+#parentId" ,value= "menucache" ) public List<Menu> listSubMenuByParentId(String parentId) throws Exception { return menuMapper.listSubMenuByParentId(parentId); } |
到此這篇關于springboot ehcache 配置使用方法代碼詳解的文章就介紹到這了,更多相關springboot ehcache 配置使用內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://www.cnblogs.com/teacher11/archive/2021/06/25/14929866.html