- 博客(7)
- 收藏
- 关注
原创 事务执行了,数据却没有变化?
场景:页面上有保存、提交两个操作保存的逻辑:查询当前数据,如果之前保存过,则更新提交的逻辑: 查询当前数据,更新数据状态,记录日志现象:提交操作执行之后,数据状态没有更新,但是日志记录成功了原因:通过查询请求日志发现,人员在很短的时间内同时操作了保存和提交操作,mysql隔离级别(RR)每个操作都有事务控制,RR隔离级别下,查询的数据为快照,当提交的操作先执行完,但是保存是的快照是提交操作执行之前的快照,当保存操作事务提交之后,将提交的变更覆盖,导致了数据状态没变,但是日志缺记录
2022-01-07 11:03:29 1794
原创 mysql 产生死锁原因记录
场景:pc端,移动端 同时操作批量更新数据,pc端数据展示和移动端展示数据量及顺序不一致复现: 原因:mysql 加锁顺序不一致,互相等待彼此释放对方释放持有的锁,形成死锁解决:加分布式,避免请求重复执行批量操作 查询数据顺序保持一致,可能导致锁等待超时...
2022-01-07 10:48:51 815
原创 Mysql时区显示
Mysql时区显示通过在连接数据库URL的配置文件中指定***&serverTimezone=GMT%2B8*** 注意 + 号转义 %2B这种方式只是指定了当前SQL连接的时区为GMT+8修改数据库时区配置,配置为+8:00对于使用JsonFiled(format)(FastJSON注解);JsonFormat(patter,timezone)(Jackson Spring boot 默认解析方式,必须指定timezone = “GMT+8”)...
2020-10-28 17:25:44 469
原创 JDK1.7HashMap多线程环境下,死循环原因
由于JDK1.7使用的是头插法(新的会插到链表头部),当一个线程resize完成,另一个线程未resize完成,连表会指向resize之后的链表,另一个线程的e.nxet()指向了前一个,导致了死循环。...
2020-03-22 13:59:26 701
原创 Mybatise 返回多值
如果指定返回值类型 resultType=HashMap ,那么返回的数据则,列为key,值为value 注意 :返回的数据只能有一行
2018-07-20 11:51:47 2291
原创 Git 分支报错
Git 分支问题在其他分支运行后,再转回自己分支报错,先clean 然后install 再运行可以解决,有可能是由于之前的war包没有及时清理造成。
2018-07-13 17:18:18 579
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人