首页 > 其他分享 >mybatisplus 注入和更新问题

mybatisplus 注入和更新问题

时间:2022-12-12 17:22:06浏览次数:42  
标签:mybatisplus 更新 插入 脏读 数据量 操作 注入

1、在接口中如果没有存在事务进行插入和更新操作,会存在一个问题,就是可能导致结果异步,出现脏读的问题;

比如,针对A表进行插入和更新操作,然后下一步是进行查询操作,当数据量比较大的时候,因为mybatisplus 里的updateById的方法,每次调用的时候,它只是提交一个指令给到数据库,然后提前返回1的结果回来,此时进行查询的话,如果数据量大,更新或者插入的速度变慢的话,此时selectById操作后,会拿到更新之前的数据,从而导致脏读的问题;

 

#解决办法:

     在方法里加入事务操作,如果常规的

@Transactional(rollbackFor = Exception.class)标签无效的话,就改用下面的事务
@Autowired
private TransactionTemplate transactionTemplate;
transactionTemplate.execute((executeStatus)->{//业务});

标签:mybatisplus,更新,插入,脏读,数据量,操作,注入
From: https://www.cnblogs.com/huangwentian/p/16976625.html

相关文章