SpringDataRedis持续更新部分值使用方式
SpringDataRedis文档13.9部分介绍了使用持续部分更新值的方式,但是文中的template对象并没有说明是Repository对象还是RedisKeyValueTemplate对象,所以,下面分析以下代码:
Redis提供了org.springframework.data.keyvalue.repository.KeyValueRepository仓库接口,对应的实现类:org.springframework.data.keyvalue.repository.support.SimpleKeyValueRepository。
分析 SimpleKeyValueRepository 类:

方法签名:org.springframework.data.keyvalue.core.KeyValueTemplate#insert(T objectToInsert)


先看以下execute的方法主体

1:意思就是说函数接口Lambda表达式最终通过调用org.springframework.data.redis.core.RedisKeyValueAdapter#put方法
目前分析到这里
接下来分析RedisKeyValueTemplate实现类

第一个update方法的super.update语句就是调用KeyValueTemplate实现类中转了一下

上图是第一个update方法调用的中转的语句主题,最终调用的位置都是一样的
我们想使用Redis的持续更新部分值,那么就需要使用
PartialUpdate类


上图是官方文档的使用说明。
所以操作Repository和操作RedisKeyValueTemplate类的功能不会少,就是 通知事件,更新生存时间都会进而更新的,,,
以上内容都是通过代码排查,并未进行过精确的Debug分析,如有错误,请提醒
SpringDataRedis持续更新部分值使用方式的更多相关文章
- ASP.NET MVC深入浅出系列(持续更新) ORM系列之Entity FrameWork详解(持续更新) 第十六节:语法总结(3)(C#6.0和C#7.0新语法) 第三节:深度剖析各类数据结构(Array、List、Queue、Stack)及线程安全问题和yeild关键字 各种通讯连接方式 设计模式篇 第十二节: 总结Quartz.Net几种部署模式(IIS、Exe、服务部署【借
ASP.NET MVC深入浅出系列(持续更新) 一. ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态模 ...
- 【mysql】在mysql中更新字段的部分值,更新某个字符串字段的部分内容
在mysql中更新字段的部分值,更新某个字符串字段的部分内容 sql语句如下: update goods set img = REPLACE(img,'http://ozwm3lwui.bkt.clo ...
- 【持续更新】JavaScript常见面试题整理
[重点提前说]这篇博客里的问题涉及到了了JS中常见的的基础知识点,也是面试中常见的一些问题,建议初入职场的园友Mark收藏,本文会持续更新~ 1. 引入JS的三种方式 1.在HTML标签中直接使用,直 ...
- PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中……)
PTA|团体程序设计天梯赛-练习题目题解锦集(持续更新中) 实现语言:C/C++: 欢迎各位看官交流讨论.指导题解错误:或者分享更快的方法!! 题目链接:https://pintia.cn/ ...
- SpringBoot面试题 (史上最全、持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- iOS开发系列文章(持续更新……)
iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...
- 基于android studio的快捷开发(将持续更新)
对于Android studio作为谷歌公司的亲儿子,自然有它的好用的地方,特别是gradle方式和快捷提示方式真的很棒.下面是我在实际开发中一些比较喜欢用的快速开发快捷键,对于基本的那些就不多说了. ...
- 总结js常用函数和常用技巧(持续更新)
学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...
- 干货!IT小伙伴们实用的网站及工具大集合!持续更新!
1.Git 还在担心自己辛辛苦苦写的代码被误删了吗?还在担心自己改错了代码不能挽回吗?还在苦恼于多人开发合作找不到一个好的工具吗?那么用Git就对 了,Git是一个开源的分布式版本控制系统,用以有效. ...
随机推荐
- k8s-ingress增加跨域问题
第一种: kubectl get ingresses. -n rrzhibo-admin test-rrzb-apiadmin-gateway-http-ingress -o yaml apiVers ...
- windows上安装foremost
做CTF题需要这工具来提取文件里的隐藏文件, 网上大部分是linux版本,之前好不容易找了一个exe文件结果还不能用.找了很长时间终于找到了: https://github.com/raddyfiy/ ...
- [杂记]如何在LaTeX里插入高亮代码
继上次学会在ppt里面插入带有高亮的c程序代码之后,zyy在这条不归路上越走越远-- 好的,长话短说,今天我介绍的是怎么在LaTeX中插入高亮的c程序代码.(其实不止c程序的代码,别的语言也是可以的, ...
- 快速安装与配置kubernetes集群搭
Kubernetes是什么? 首先,它是一个全新的基于容器技术的分布式架构领先方案.这个方案尽然很新,但它是谷歌十几年以来大规模应用容器技术的经验积累和升华的一个重要成果.确切地说,kubernete ...
- k8s dashboard 安装和证书更新
1.k8s 搭建 参见https://blog.51cto.com/lizhenliang/2325770 [root@VM_0_48_centos ~]# kubectl get cs NAME ...
- 让Node.js支持ES6的语法
使用命令,全局安装es-checker: cnpm install -g es-checker 安装好之后,执行以下命令来查看Node.js对ES6的支持情况. es-checker 可以从输出中查看 ...
- matplotlib补充知识及数据清理方法
今日内容概要 数据操作 数据清洗理论 数据清洗实操 数据操作 read_csv read_excel read_hdf read_html read_json read_msgpack read_sq ...
- 上传css,js文件并引用
今天在做单页面的简历,由于css样式跟js代码过多,所以就想着可不可以把css文件跟js文件上传到网上,然后引用. 一开始的想法是我上传到gitee上,但是从gitee服务器返回的Header上加了C ...
- 2022最新IntellJ IDEA诺依开发部署文档
前景提示 若伊是国内一款很好的开源项目,非常的便于学习,而且它是开源免费的,但是,它的开发部署文档实在是没法按照那个文档,快速高效的在本地搭建一套可以运行的项目,对于学习开发和使用实在是一大难题,为此 ...
- 【行业Tip】两化融合
工业4.0 智能制造规划 两化融合是信息化和工业化的高层次的深度结合, 是指以信息化带动工业化.以工业化促进信息化,走新型工业化道路:两化融合的核心就是信息化支撑,追求可持续发展模式.