博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot cache backed guava/caffeine
阅读量:7225 次
发布时间:2019-06-29

本文共 1303 字,大约阅读时间需要 4 分钟。

  hot3.png

    Spring Boot提供了spring-boot-starter-cache,支持多个缓存实现,如EHCache,Redis,GUAVA etc...,此处以轻量GUAVA为例:

一. 基本使用

0. 首先需要加入依赖,版本根据自己需求指定

org.springframework.boot
spring-boot-starter-cache
${v}
com.google.guava
guava
${v}

1. 开启缓存,在Application类加入@EnableCaching

2. 通过@Cacheable使用缓存

@Cacheable("{cacheNames}")public Object needCache() {	return ...;}

 

二. 指定缓存参数[以过期时间为例,不同的数据类型要求的缓存时间不同]

Spring boot提供基于application.xx的配置

spring.cache.type=GUAVAspring.cache.cache-names=cacheName# 参数参考com.google.common.cache.CacheBuilderSpecspring.cache.guava.spec=expireAfterWrite=7m

这种配置方式,只能提供一种策略的缓存(如果有直接基于配置配置文件的多种策略配置,请留言),如果不同缓存策略需要通过自定义配置:

@Configurationpublic class CacheConfig {	/**	 * Define cache strategy	 * 	 * @return CacheManager	 */	@Bean	public CacheManager cacheManager() {		SimpleCacheManager simpleCacheManager = new SimpleCacheManager();		List
caches = new ArrayList<>(); # 缓存5min后失效 caches.add(new GuavaCache("{cacheName}", CacheBuilder.newBuilder().expireAfterAccess(5, TimeUnit.MINUTES).build())); simpleCacheManager.setCaches(caches); return simpleCacheManager; }}

 

配置完成发现spring推荐使用caffeine取代guava,所以改为使用caffeine作为实现。

 

PS: ,,

转载于:https://my.oschina.net/geek4j/blog/876117

你可能感兴趣的文章
Microsoft Exchange Server 与Office 365混合部署优势
查看>>
Java学习笔记—第十二章 Java网络编程入门
查看>>
APUE读书笔记-04文件和目录(3)
查看>>
PHP如何解决网站大流量与高并发的问题
查看>>
安装配置整理之 net-snmp
查看>>
java面试题集
查看>>
刘宇凡:苍井空卖内衣 典型的情怀产品
查看>>
在Linux中如何关闭正在运行中的ping命令。
查看>>
Linux 环境下Oracle安装与调试(五)之事务、触发器
查看>>
heartbeat+crm+mysqld+nfs实现MySQL服务的高可用
查看>>
hadoop 2.2.X 配置参数说明: core-site.xml
查看>>
通达OA2011和域同步的设置出错及解决
查看>>
hibernate配置
查看>>
collection中的remove方法
查看>>
codeforces-387B. George and Round
查看>>
linux运维实战练习-2015年9月5日课程作业(练习)安排
查看>>
误删linux文件恢复
查看>>
我的友情链接
查看>>
dbms_xplan之display_cursor函数的使用
查看>>
什么是 Angularjs
查看>>