mybatis缓存导致REQUIRES_NEW数据读不到

news/2024/10/23 9:29:40/

业务场景
处理一个数据包时,会看数据包中A数据是否在数据库已经存在,存在的话查出来使用其数据
不存在的话 新开一个事务@Transactional(propagation = Propagation.REQUIRES_NEW) 保存此A数据到数据库 (新开事务是为了防止整个数据包保存失败时,A数据没有被顺利保存到数据库)
新事物执行完后,外面事务再查询到A在数据库的数据来使用。
现在场景是断点打在新事物提交后,通过数据库连接直接查询,A是被保存再数据库中。但是外层事务查询A时没有数据返回,外层事务新开线程也可以查询到A数据。

问题原因
外城事务判断有没有A时查过一次,结果为没有并且保存到mybatis缓存了。新事物保存数据之后,外面再查还是拿的缓存的数据,清一下mybatis缓存就能查到了

代码为

    @Autowiredprivate SqlSessionFactory sqlSessionFactory;
SqlSessionUtils.getSqlSession(sqlSessionFactory).clearCache();

http://www.ppmy.cn/news/1260039.html

相关文章

阿里云上传文件出现的问题解决(跨域设置)

跨域设置引起的问题 起因&#xff1a;开通对象存储服务后&#xff0c;上传文件限制在5M 大小&#xff0c;无法上传大文件。 1.查看报错信息 2.分析阿里云服务端响应内容 <?xml version"1.0" encoding"UTF-8"?> <Error><Code>Invali…

前端面试题【构建工具篇】

前言 在现代前端开发中&#xff0c;构建工具是不可或缺的一部分。Webpack 和 Vite 作为两个主流的构建工具&#xff0c;都在前端开发中发挥着重要作用。本文将深入探讨一些与构建工具相关的面试题&#xff0c;涵盖Webpack的loader、主要作用&#xff0c;以及Webpack中的HMR&am…

二百一十三、Flume——Flume拓扑结构介绍

一、目的 最近在看尚硅谷的Flume资料&#xff0c;看到拓扑结构这一块&#xff0c;觉得蛮有意思&#xff0c;于是整理一下Flume的4种拓扑结构 二、拓扑结构 &#xff08;一&#xff09;简单串联 1、结构含义 这种模式是将多个flume顺序连接起来了&#xff0c;从最初的sourc…

常见的git操作

git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支 git branch -r 查看远程所有分支 git commit -am "init" 提交并且加注释 git remote add origin git192.168.1.119:ndshow git push origin master 将文件…

金山终端安全系统V9.0 update_software_info_v2.php处SQL注入漏洞复现 [附POC]

文章目录 金山终端安全系统V9.0 update_software_info_v2.php处SQL注入漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现0x06 修复建议参考链接:金山终端安全系统V9.0 update_software_info_v2.php处SQL注入漏洞…

Spring Boot学习(三十三):集成kafka

前言 下面是zookeeper和kafka的官网下载地址&#xff0c;大家可以学习下载 zookeeper下载地址&#xff1a;http://zookeeper.apache.org/releases.html kafka下载地址&#xff1a;http://kafka.apache.org/downloads.html 1、添加依赖 在 pom.xml 文件中添加kafka依赖&am…

10.Java程序设计-基于SSM框架的微信小程序家教信息管理系统的设计与实现

摘要是论文的开篇&#xff0c;用于简要概述研究的目的、方法、主要结果和结论。以下是一个简化的摘要示例&#xff0c;你可以根据实际情况进行修改和扩展&#xff1a; 摘要 随着社会的发展和教育需求的增长&#xff0c;家教服务作为一种个性化的学习方式受到了广泛关注。为了更…

IBL环境贴图原理及着色器实现【基于图像的照明】

IBL - Image Based Lighting - 也就是基于图像的照明&#xff0c;是一组照亮物体的技术&#xff0c;不是像上一章那样通过直接分析光&#xff0c;而是将周围环境视为一个大光源。 这通常是通过操作立方体贴图环境贴图&#xff08;取自现实世界或从 3D 场景生成&#xff09;来完…