Java
文章平均质量分 93
孤城浪子55555
让自己成为无可替代
展开
-
一次开发中并发删除插入死锁分析记录
这两天在开发一个项目的时候有一个操作是多线程同步数据,每个线程同步一个类型的数据,同步流程是先删除此类型下所有数据,然后批量插入新数据。但是测试过程中会发现有死锁现象,虽然可以直接对删除插入代码使用同步代码块的方式快速解决问题,但是本着学习的心态还是研究了一番死锁产生的根因,记录如下。表结构如下(脱敏简化,主键ID实际是UUID)CREATE TABLE `t2` ( `id` char(1) NOT NULL, `type` varchar(255) DEFAULT NULL, PRI原创 2021-06-19 22:19:27 · 2070 阅读 · 0 评论 -
MybatisPlus代码生成器实现只覆盖指定文件
MybatisPlus代码生成器实现只覆盖指定文件问题在使用MybatisPlus的过程中如果数据库结构发生了改变(增加或者删除了字段),应该怎么办?重新运行代码生成器?手动去Entity里面修改?第一个办法在项目还没开始的时候是没问题的,毕竟控制器和服务里面都没有代码,只要把全局策略 globalConfig 配置中的fileOverride设置为true就可以直接覆盖了,但是如果已经写了一部分就不行了,因为代码生成器覆盖的话默认会覆盖所有的文件,而在service和mapper这些文件里面原创 2020-05-14 20:30:14 · 4817 阅读 · 4 评论