解决客户端 query did not return aunique result:2

从字面意思很好理解,查询出了两条相同的记录,说明数据库出现了脏数据,反复检验程序并未发现有bug。

最终 确定 是由于 程序是布在 两个节点上。当同一用户发出两次相同的请求时,执行的两次保存数据的动作 ,被分别分配在了两台节点服务上边,导致了脏数据的产生。

解决办法: 系统架构是用的是 hibernate。则使用框架自带 的乐观锁 来 保证 事务的 完整性

乐观锁的工作原理:读取出数据时,将此版本号一同读出,之后更新时,对此版本号加一。此时,将提交数据的版本数据与数据库表对应记录的当前版本信息进行比对,如果提交的数据版本号大于数据库表当前版本号,则予以更新,否则认为是过期数据

@Entity
@Table(name = "customer")
@ApiModel
public class Customer extends BaseEntity {@Version
    @Column(nullable = false)private Long version;

解决客户端 query did not return aunique result:2相关推荐

  1. org.springframework.dao.IncorrectResultSizeDataAccessException: query did not return a unique result

    客户现场反馈考勤计算失败: 日志报错显示: org.springframework.dao.IncorrectResultSizeDataAccessException: query did not ...

  2. org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for the

    一:报错 org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for ...

  3. A query was run and no Result Maps were found for the Mapped Statement ‘xxx‘

    报错信息 A query was run and no Result Maps were found for the Mapped Statement 'xxxMapper.xxx'. It's li ...

  4. A query was run and no Result Maps were found

     使用mybatis时出现异常问题: 有如下的错误 Error querying database.  Cause: org.apache.ibatis.executor.ExecutorExce ...

  5. 解决ajax异步传输数据,return返回为undefined的问题

    解决ajax异步传输数据,return返回为undefined的问题 参考文章: (1)解决ajax异步传输数据,return返回为undefined的问题 (2)https://www.cnblog ...

  6. java使用jdbc调用hive出现The query did not generate a result set!

    2019独角兽企业重金招聘Python工程师标准>>> java使用jdbc调用hive出现The query did not generate a result set! 博客分类 ...

  7. 解决客户端Redis中文乱码问题

    解决客户端Redis中文乱码问题 参考文章: (1)解决客户端Redis中文乱码问题 (2)https://www.cnblogs.com/ovim/p/11199167.html 备忘一下.

  8. 触发器报错“Not allowed to return a result set from a trigger”的解决方案

    触发器报错"Not allowed to return a result set from a trigger"的解决方案 参考文章: (1)触发器报错"Not allo ...

  9. java统一返回结果集封装,解决No converter found for return value of type

    网上很多,自己参照手写了一个. package com.***.pro.utils;/*** @Author: wsh*/public class Result<T> {private B ...

最新文章

  1. lr参数化取值与连接数据库
  2. callback回调使用 vue_前端动画必知必会:React 和 Vue 都在用的 FLIP 思想实战
  3. 使用Dom4j读取指定文件,并写入指定文件
  4. c++ 暂停功能_2020.10.16撸友简报:NC资本澄清;去嗨皮打赏交易
  5. 【Flink】Flink KeyGroupRange {startKeyGroup=7,endKeyGroup=12} does not contain key group 45
  6. Hibernate的执行流程——SessionFactory的创建
  7. nodejs生成动态网页
  8. 关于pycharm安装出现的interpreter field is empty,无法创建项目存储位置
  9. python网页抓取与按键精灵原理一样吗_按键精灵等以GUI接口为基础的程序在爬虫界的地位是怎样的?...
  10. 儿童吹泡泡水简单配方_教你泡泡水的制作方法 自制泡泡水配方大全
  11. TensorFlow Estimator学习笔记(二)Estimator自定义模型-使用卷积神经网络解决 MNIST 问题
  12. 科技热点周刊|ClickHouse 融资 2.5 亿美元、个人信息保护法正式实施、Facebook 改名 Meta
  13. 高盛vr/ar研究报告
  14. Telsa K40m
  15. 电视行业迎来市场“拐点” TCL曲面电视表现最为抢眼
  16. python爬取王者荣耀全皮肤高清无水印图片
  17. matlab 循环平稳检测,循环平稳信号处理完整的Matlab工具箱
  18. 60.ElasticSearch
  19. Win10系统Anaconda下安装TensorFlow、Karas和PyTorch
  20. CVPR 2021 | Involution:超越卷积和自注意力的神经网络新算子

热门文章

  1. FPGA固化MCS文件失败
  2. 抑制细胞代谢紊乱的抑制剂
  3. 105个多音字 汉字 鸿门宴上武松喝酒商店打烊王昭君载歌载舞麻将桌上和了炮弹薄利多销人参上学
  4. 计算机网络技术 选修 沪科版教案,高中物理第3章从电表电路到集成电路3.5逻辑电路与集成电路教案沪科版选修3_1...
  5. Win10远程桌面连接不上Win7的桌面的一次奇葩经历
  6. php xdebug remote_host 多个,卓象程序员:PHPStudy PHPStorm XDebug调试
  7. JAVA中Cookie MaxAge属性及其使用
  8. Android工程师技能表
  9. rufus制作 linux各个版本的U盘启动盘工具
  10. mysql的事件开启,停止和启动