SpringBoot——关于Cache缓存获取值后修改的问题「建议收藏」

SpringBoot——关于Cache缓存获取值后修改的问题「建议收藏」SpringBoot——关于Cache缓存获取值后修改的问题

大家好,又见面了,我是你们的朋友全栈君。

使用Spring缓存时遇到一个问题,问题如下:

在使用@Cacheable注解获取缓存中的值之后,将获取到的值进行修改,之后再次通过缓存获取该对象时,发现缓存中的值也被修改了。

来看一下代码:

 @Cacheable(cacheNames = "userCache", key = "#key")
    public User getCache(String key) {
        //获取最新数据
        return getNewData(key);
    }

上边的代码意思就是:通过参数key获取缓存中的User对象,如果缓存中没有就会执行代码getNewData(key);进行返回并进行缓存。

在调用该方法之后,将返回的User对象进行修改之后,再次通过缓存获取User对象,此时获得的对象就是修改之后的对象。

那么可以看出缓存方法返回的对象就是保存在缓存内部的对象,而不是一个缓存对象的副本,这与博主之前所认为的是不一样的,所以大家在使用缓存的时候一定要注意,不要掉进这个坑里!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106452.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 使用Iocomp工控图表工具绘制实时曲线

    使用Iocomp工控图表工具绘制实时曲线概述:本文为使用Iocomp工控图表工具绘制实时曲线探索及研究教程,为大家介绍了Iocomp控件、实时曲线绘制方法、Iocomp界面操作,属性分类等。帮助学习者更好的运用Iocomp。

    2022年7月17日
    19
  • 复制粘贴不到远程桌面_win10远程桌面无法复制粘贴

    复制粘贴不到远程桌面_win10远程桌面无法复制粘贴在远程服务器上打开任务管理器,在进程里面找到rdpclip进程(或者剪贴板监视器),点击“结束进程”打卡DOS命令符,输入rdpclip后,确认,从新打开远程剪贴服务。

    2022年8月20日
    10
  • yum源仓库搭建

    yum源仓库搭建安装 createrepo 命令 sudoyuminsta 方法一 本地 yum 源 file 放置需要被 yuminstall 的软件包 比如 var localfile 创建仓库目录 sudocreatere var localfile 在 etc yum repos d 路径下创建 localfile repo 名字任意 sudo

    2025年8月6日
    3
  • idea配置Tomcat_tomcat docbase

    idea配置Tomcat_tomcat docbaseidea配置tomcaterror:duplicatecontextpath 解决方法:    在editconfig中部署tomcat,     server         tomcathome            D:\software……\apache-tomcat-7.0.65   …

    2022年9月17日
    4
  • 《物流与供应链管理》课程论文

    《物流与供应链管理》课程论文《物流与供应链管理》课程论文题目:基于重心法的物流配送中心选址研究学生姓名贾树丙学号110104200208指导教师于德建二级学院信息学院专业名称计算机科学与技术班级11计算机2201

    2022年8月4日
    6
  • JavaScript中prototype用法

    JavaScript中prototype用法1概述大部分面向对象的编程语言,都是以类class作为对象的基础语法,js语言不是如此,它的面向对象编程基于‘原型对象’。首先说说构造函数的缺点:js通过构造函数生成新的对象,因此构造函数可以视为独享的模版。实例对象的属性和方法,可以定义在构造函数内部概述构造函数的缺点JavaScript通过构造函数生成新对象,因此构造函数可以视为对象的模板。实例对象的属性和方法,可以定

    2022年7月22日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号