Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >springboot-cache+redis 为指定名称缓存设置独立超时时间

springboot-cache+redis 为指定名称缓存设置独立超时时间

作者头像
路过君
发布于 2024-05-24 04:23:12
发布于 2024-05-24 04:23:12
26300
代码可运行
举报
运行总次数:0
代码可运行

版本

spring-boot: 3.2.2

方案

注册 RedisCacheManagerBuilderCustomizer Bean对指定名称缓存进行定制

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Bean
RedisCacheManagerBuilderCustomizer redisCacheManagerBuilderCustomizer() {
    return builder -> builder.withCacheConfiguration(
    		// @Cacheable 注解使用的cacheNames参数值
            CACHE_NAME_1,
            builder
		            // 获取全局配置
                    .cacheDefaults()
                    // 在全局配置基础上添加超时时间配置
                    .entryTtl(Duration.ofSeconds(60))
    ).withCacheConfiguration(
            CACHE_NAME_2,
            builder
                    .cacheDefaults()
                    .entryTtl(Duration.ofSeconds(60))
    );
}

源码

redis缓存管理器自动化配置 org.springframework.boot.autoconfigure.cache.RedisCacheConfiguration

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
...
@Conditional(CacheCondition.class)
class RedisCacheConfiguration {
	...
	@Bean
	RedisCacheManager cacheManager(CacheProperties cacheProperties, CacheManagerCustomizers cacheManagerCustomizers,
			ObjectProvider<org.springframework.data.redis.cache.RedisCacheConfiguration> redisCacheConfiguration,
			ObjectProvider<RedisCacheManagerBuilderCustomizer> redisCacheManagerBuilderCustomizers,
			RedisConnectionFactory redisConnectionFactory, ResourceLoader resourceLoader) {
		// 如果存在redisCacheConfiguration则使用redisCacheConfiguration,否则读取配置属性构造
		RedisCacheManagerBuilder builder = RedisCacheManager.builder(redisConnectionFactory)
			.cacheDefaults(
					determineConfiguration(cacheProperties, redisCacheConfiguration, resourceLoader.getClassLoader()));
		// 使用上一步构造的默认配置初始化所有名称的缓存配置
		List<String> cacheNames = cacheProperties.getCacheNames();
		if (!cacheNames.isEmpty()) {
			builder.initialCacheNames(new LinkedHashSet<>(cacheNames));
		}
		if (cacheProperties.getRedis().isEnableStatistics()) {
			builder.enableStatistics();
		}
		// 应用redis缓存管理器定制器
		redisCacheManagerBuilderCustomizers.orderedStream().forEach((customizer) -> customizer.customize(builder));
		// 应用公共缓存管理器定制器
		return cacheManagerCustomizers.customize(builder.build());
	}
	...
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
7b2美化-添加好看的底部介绍
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
小狐狸说事
2022/11/16
7670
7b2美化-添加好看的底部介绍
Blazor学习之旅 (13) Razor类库的使用
在上一篇我们学习了Blazor和JavaScript的互操作性,这一篇我们了解下如何创建和使用Razor类库。
Edison Zhou
2024/01/03
6760
Blazor学习之旅 (13) Razor类库的使用
外挂基础_开挂的正确姿势
  所谓游戏外挂,其实是一种游戏外辅程序,它可以协助玩家自动产生游戏动作、修改游戏网络数据包以及修改游戏内存数据等,以实现玩家用最少的时间和金钱去完成功力升级和过关斩将。虽然,现在对游戏外挂程序的“合法”身份众说纷纭,在这里我不想对此发表任何个人意见,让时间去说明一切吧。
全栈程序员站长
2022/11/10
2.7K0
全栈开发工程师微信小程序 - 上
wx:for是列表渲染标签,默认当前循环项的变量名为item.wx:key用于在动态列表渲染中保存子项的特征和状态.
达达前端
2022/04/29
6380
全栈开发工程师微信小程序 - 上
致敬1024程序员节:用JavaScript编写一个简单的1024小游戏
在每年的10月24日,我们都会庆祝程序员节,这是一个向所有辛勤工作、创造出无数令人惊叹应用和系统的程序员们致敬的日子。为了纪念这个特殊的日子,我们将通过编写一个简单的1024小游戏来向所有程序员们表示敬意。本文将详细解释如何使用JavaScript编写这个小游戏,并对代码进行分段讲解。
can4hou6joeng4
2023/11/17
4690
波浪动态背景
itclanCoder
2023/09/14
3870
波浪动态背景
12、动态链接库,dll
动态链接库通常都不能直接运行,也不能接收消息。它们是一些独立的文件,其中包含能被可执行程序或其它DLL调用来完成某项工作的函数。只有在其它模块调用动态链接库中的函数时,它才发挥作用。
全栈程序员站长
2022/07/05
1.1K0
12、动态链接库,dll
【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(四) -> 常见组件(一)
List是用来显示列表的组件,包含一系列相同宽度的列表项,适合连续、多行地呈现同类数据。
枫叶丹
2025/02/06
1240
【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(四) -> 常见组件(一)
使用纯 html + javascript 开发一个本地音乐播放器
本文介绍不使用任何前端开发框架,仅凭借原生的 html + JavaScript,实现一个简单的本地音乐播放器的实现步骤。
编程小妖女
2025/06/08
3970
使用纯 html + javascript 开发一个本地音乐播放器
「译」Flexbox 基本原理
整理自 MDN web docs 的笔记,同时参考了 Web Bos 上的什么是 Flexbox系列视频。
Chor
2019/11/08
2.3K0
仿高德地图实现输入起点和终点规划路径并可切换
本文结合高德API和MapboxGL,仿照手机版高德地图实现用户输入起点和终点位置并模糊搜索选择具体位置,根据选择的起始点位置规划路径,并实现多条路径的切换展示。
牛老师讲GIS
2025/05/31
1360
仿高德地图实现输入起点和终点规划路径并可切换
通用系统函数
熟练掌握Win32 API函数的参数传递,是软件逆向的基础,本章节内容将使用MASM汇编器,逐个编译这些源程序,你可以通过使用一些调试工具,这里推荐OllyDBG来附加编译后的可执行文件,进行逐个分析,观察二进制程序逆向后的一些变化,总结吸收经验,为以后的二进制逆向,漏洞挖掘打基础.
王 瑞
2022/12/28
1.2K0
【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(二)
HML(HarmonyOS Markup Language)是一套类HTML的标记语言,通过组件,事件构建出页面的内容。页面具备数据绑定、事件绑定、列表渲染、条件渲染和逻辑控制等高级能力。
枫叶丹
2025/01/27
2300
【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(二)
企鹅电竞weex实践之UI篇
随着电竞业务的不断发展,页面功能越来越多,交互逻辑更加复杂,类似无限滚动、上拉刷新、横竖切换滚动等形式在业务中已是标配,经过重重优化后在H5中的体验一直达不到理想状态,没错,种种卡,H5的性能太差! 是持续优化还是破而后立选择新的技术方向呢?我们选择了更有效的后者。
xiangzhihong
2022/11/30
1.2K0
uniapp+springboot实现知识点显示
GeekLiHua
2025/01/21
1090
uniapp+springboot实现知识点显示
用 WPF 写的颜色拾取器
之前都是用别人的颜色拾取器,今天自己用WPF写了一个颜色拾取器小程序 拾取鼠标所在位置的颜色,按键盘上的空格键停止取色 程序下载:MyWPFScreenColorE.rar 程序里面有一个全局的勾子
lpxxn
2018/01/31
1.5K0
用 WPF 写的颜色拾取器
JavaWeb新手进阶经典项目 & 半小时高效开发 & 海量知识点涵盖 (二)
我们昨天完成了第一部分的开发,即项目搭建和登录、注册功能实现。今天本文将与读者一起实现用户列表的显示、部门模块的显示和头像上传功能。
易兮科技
2020/09/27
1.2K0
JavaWeb新手进阶经典项目 & 半小时高效开发 & 海量知识点涵盖 (二)
用CodeBuddy打造儿童拼图游戏:AI如何让创意编程更简单
我正在参加CodeBuddy「首席试玩官」内容创作大赛,本文所使用的 CodeBuddy 免费下载链接:腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴
小Q圈圈
2025/05/28
1740
用CodeBuddy打造儿童拼图游戏:AI如何让创意编程更简单
Python开发物联网数据分析平台---数据看板
image.png 前端页面dashboard.html的代码如下: {% extends "base.html" %} {% block body %} <div class="content-wrapper" data-menu="overview dashboard"> <!-- Content Header (Page header) --> <div class="content-header"> <div class="container-fluid">
MiaoGIS
2019/11/01
4.2K0
Python开发物联网数据分析平台---数据看板
CSS笔记
CSS中长度单位: px:像素(Pixel);em:相对长度单位,相对于当前对象内文本的字体尺寸;pt:点(Point),绝对长度单位;pc:派卡(Pica);in:英寸(Inch);mm:毫米;cm:厘米。 1 in = 2.54 cm = 25.4 mm = 72 pt = 6 pc
matt
2022/10/25
2.5K0
CSS笔记
相关推荐
7b2美化-添加好看的底部介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验