电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Springboot使用cache緩存過程代碼實例

瀏覽:4日期:2023-05-08 13:58:11

1.pom.xml

<!-- Ehcache 坐標 --><dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId></dependency>

2.ehcache.xml

<?xml version='1.0' encoding='UTF-8'?><ehcache> <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> <!-- maxElementsInMemory設置成1,overflowToDisk設置成true,只要有一個緩存元素,就直接存到硬盤上去 eternal設置成true,代表對象永久有效 maxElementsOnDisk設置成0 表示硬盤中最大緩存對象數無限大 diskPersistent設置成true表示緩存虛擬機重啟期數據 --> <cache name='usercache' maxElementsInMemory='1' eternal='true' overflowToDisk='true' maxElementsOnDisk='0' diskPersistent='true'><!-- <persistence strategy='localTempSwap'/>--> <!--不能和diskPersistent 同時存在--> </cache>

diskStore是物理文件的存儲路徑,

cache標簽中的name是多cache時區分的唯一標識, 和程序中初始化方法getCache('***')參數一致。<br>緩存參數和本地數據持久化存儲需自行配置

3.application.yml

spring: cache: ehcache: config: classpath:/ehcache.xml

4.啟動類添加

@EnableCaching

import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cache.annotation.EnableCaching; @EnableCaching@SpringBootApplicationpublic class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }

5.springcloud 中使用cache

import net.sf.ehcache.Cache;import net.sf.ehcache.CacheManager;import net.sf.ehcache.Element;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.core.io.ClassPathResource;import org.springframework.stereotype.Component; import java.io.IOException; /** * @Author: Peacock__ * @Date: 2019/6/14 17:30 */@Componentpublic class CacheService { @Autowired private CacheManager cacheManager; /** * 從緩存中獲取數據 * @return * @throws IOException */ public String getCache() throws IOException { String res = ''; Cache cache = cacheManager.getCache('usercache'); if(cache != null){ Element element = cache.get('name'); if(element != null){Object objectValue = element.getObjectValue();res = (String) objectValue; } } return res; } /** * 數據存入緩存 * @param data * @throws IOException */ public void putCache(String data) throws IOException { //若cacheManager被關閉,則重新創建 if(cacheManager == null || cacheManager.getStatus().intValue() != 1){ cacheManager = new CacheManager(new ClassPathResource('ehcache.xml').getInputStream()); } Cache cache = cacheManager.getCache('usercache'); //處理成要緩存的數據 //存入緩存(注意:需要保證存入緩存的數據都是可序列化的) cache.put(new Element('name', data)); /** * ehcache和其它緩存類似,需要flush或shutdown后才會持久化到磁盤。 * 會生成.data 的數據文件和 .index 的索引文件,方便重啟恢復。 * ehcache恢復數據是根據.index索引文件來進行數據恢復的。 * 當程序再次啟動的時候,ehcache的一個方法會將.data文件和.index文件的修改時間進行比較,如果不符合直接將.index文件刪除。 */ //將所有緩存項從內存刷新到磁盤存儲,并從DiskStore刷新到磁盤。// cache.flush(); //更新.index文件// cacheManager.shutdown(); }}

6.controller層

import java.io.IOException; @RestControllerpublic class AppController{ @Autowired private CacheService cacheService; @RequestMapping('/setName') public String setName() { try { cacheService.putCache( 'heshan'); } catch (IOException e) { e.printStackTrace(); } return 'yes'; } @RequestMapping('/getName') public String getName() { String res = null; try { res = cacheService.getCache( ); } catch (IOException e) { e.printStackTrace(); } return res; }}

結果:

Springboot使用cache緩存過程代碼實例Springboot使用cache緩存過程代碼實例

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 非甲烷总烃分析仪|环控百科 | 分子精馏/精馏设备生产厂家-分子蒸馏工艺实验-新诺舜尧(天津)化工设备有限公司 | 天津仓库出租网-天津电商仓库-天津云仓一件代发-【博程云仓】 | 真石漆,山东真石漆,真石漆厂家,真石漆价格-山东新佳涂料有限公司 | 懂研帝_专业SCI论文润色机构_SCI投稿发表服务公司 | CE认证_产品欧盟ROHS-REACH检测机构-商通检测 | 大_小鼠elisa试剂盒-植物_人Elisa试剂盒-PCR荧光定量试剂盒-上海一研生物科技有限公司 | 高楼航空障碍灯厂家哪家好_航空障碍灯厂家_广州北斗星障碍灯有限公司 | 工业胀紧套_万向节联轴器_链条-规格齐全-型号选购-非标订做-厂家批发价格-上海乙谛精密机械有限公司 | RS系列电阻器,RK_RJ启动调整电阻器,RQ_RZ电阻器-上海永上电器有限公司 | 亿立分板机_曲线_锯片式_走刀_在线式全自动_铣刀_在线V槽分板机-杭州亿协智能装备有限公司 | 广州市哲铭油墨涂料有限公司,水性漆生产研发基地 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | TPU薄膜_TPU薄膜生产厂家_TPU热熔胶膜厂家定制_鑫亘环保科技(深圳)有限公司 | 宽带办理,电信宽带,移动宽带,联通宽带,电信宽带办理,移动宽带办理,联通宽带办理 | 两头忙,井下装载机,伸缩臂装载机,30装载机/铲车,50装载机/铲车厂家_价格-莱州巨浪机械有限公司 | 钢化玻璃膜|手机钢化膜|钢化膜厂家|手机保护膜-【东莞市大象电子科技有限公司】 | 苏州防水公司_厂房屋面外墙防水_地下室卫生间防水堵漏-苏州伊诺尔防水工程有限公司 | 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 | 不锈钢轴流风机,不锈钢电机-许昌光维防爆电机有限公司(原许昌光维特种电机技术有限公司) | 深圳市人通智能科技有限公司 | 视频直播 -摄影摄像-视频拍摄-直播分发 | 压力喷雾干燥机,喷雾干燥设备,柱塞隔膜泵-无锡市闻华干燥设备有限公司 | 基本型顶空进样器-全自动热脱附解吸仪价格-AutoHS全模式-成都科林分析技术有限公司 | 盘煤仪,盘料仪,盘点仪,堆料测量仪,便携式激光盘煤仪-中科航宇(北京)自动化工程技术有限公司 | 科客,主见不成见| 广州网站建设_小程序开发_番禺网站建设_佛山网站建设_粤联网络 | 淘气堡_室内儿童乐园_户外无动力儿童游乐设备-高乐迪(北京) | 四川职高信息网-初高中、大专、职业技术学校招生信息网 | 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 浙江华锤电器有限公司_地磅称重设备_防作弊地磅_浙江地磅售后维修_无人值守扫码过磅系统_浙江源头地磅厂家_浙江工厂直营地磅 | 锂电混合机-新能源混合机-正极材料混料机-高镍,三元材料混料机-负极,包覆混合机-贝尔专业混合混料搅拌机械系统设备厂家 | 煤矿支护网片_矿用勾花菱形网_缝管式_管缝式锚杆-邯郸市永年区志涛工矿配件有限公司 | 蓄电池在线监测系统|SF6在线监控泄露报警系统-武汉中电通电力设备有限公司 | 电车线(用于供电给电车的输电线路)-百科| 深圳天际源广告-形象堆头,企业文化墙,喷绘,门头招牌设计制作专家 | LINK FASHION 童装·青少年装展| 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 高温链条油|高温润滑脂|轴承润滑脂|机器人保养用油|干膜润滑剂-东莞卓越化学 | 无锡市珂妮日用化妆品有限公司|珂妮日化官网|洗手液厂家 | H型钢切割机,相贯线切割机,数控钻床,数控平面钻,钢结构设备,槽钢切割机,角钢切割机,翻转机,拼焊矫一体机 |