spring 事务使用的坑
来源:互联网 发布:机械绘图软件 编辑:程序博客网 时间:2024/05/20 19:47
1、业务背景介绍
1)tomcat集群通过数据库的唯一索引来处理并发问题,比如username的唯一性,这样业务代码里面可以不需要写同步逻辑;
2)保存用户的业务逻辑使用事务,先保存用户信息,再统计新增用户数,这个时候新增用户数和数据库中的有效数据记录会不一致,
2、原因分析
保存用户的业务逻辑因为使用事务,保存用户信息时需要在函数执行完才提交,相当于相同username的记录保存时函数返回不会抛异常,会继续执行内存更新新增用户的逻辑,当在函数执行完执行提交时,相同username的记录会抛出key唯一的异常,但是这时内存的用户计数已经更新了,这样就导致了新增用户的内存计数和数据库的有效记录不一致
总结,使用事务的时候,一定要注意记录是在函数执行完统一提交的,若业务逻辑中有依赖记录成功保存的条件,这时事务操作是不合适的。
0 0
- spring 事务使用的坑
- 使用Spring的事务注解管理事务
- spring事务的配置使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring Boot 事务的使用
- Spring事务的“坑”
- spring事务使用的一点总结
- spring 两种事务的使用
- spring中异常的使用--事务
- Spring事务使用的一个误区
- 使用spring管理hibernate的事务
- Spring-jdbc:事务管理器的使用
- SpringMVC工作原理
- HttpURLConnection的GET请求POST请求小总结
- javaBean之useBean,setProperty,getProperty
- 关于链表的认识
- 乘法逆元(密码学)
- spring 事务使用的坑
- 01背包+完全背包问题
- 在Android模拟器上安装apk的时候出现 INSTALL_FAILED_NO_MATCHING_ABIS
- 第一章 Shiro简介——《跟我学Shiro》
- Multicast 组播
- 小知识
- Attempting to load the view of a view controller while it is deallocating is not allowed and may res
- Win10下WinRAR“拒绝访问”解决+获取everyone权限
- cocos2d-x不同版本的安装兼容问题