mybatisPlus插入后, 无法获取到自增的主键id的问题

在项目中,使用MyBatisPlus进行数据插入时,遇到无法获取自增主键ID的问题。原因是之前为MyBatis编写的XML插入语句与MyBatisPlus的内置插入语句产生冲突。删除冲突的自定义XML插入语句后,成功解决了主键ID获取不到的难题。建议尽量使用MyBatisPlus自带的CRUD操作,以避免类似问题,将更多精力集中在业务逻辑处理上。
摘要由CSDN通过智能技术生成

描述

最近开发遇见一个问题, 就是使用mybatisPlus内置的插入语句后, 发现在后面的代码中, 无法获取到其自增的主键id, 找了各种资料, 最终发现是原来xml中有一个insert的语句, 和mybtisPlus的insert发生了冲突 , 所以导致无法获取到id, 接下来是问题复现

复现

在这里插入图片描述
上图中, 可以发现sql可以正常输出和插入, 但是下面确实获取不到他的自增的id,

解决

在mapper对应的xml文件中, 搜索insert找到了如下语句
在这里插入图片描述
, 点击左侧箭头, 发现进入了mybatisPlus内置的baseMapper中了, 这并不是我们想要的, 由此可见, 一定是两者发生了冲突, 导致虽然可以插入数据, 但是无法获取不到对应的自定id, 该条sql删除, 重试
在这里插入图片描述
发现id已经可以正常获取, 问题解决

总结

由于本项目前期使用的是mybatis, 后期为了方便进行crud, 改成了mybatisPlus, 这时候其中有一些mapper的sql语句已经写好了, 并且名称和mybatisPlus的一致, 这就导致了两者发生冲突, 建议以后如果不是特别复杂的sql语句, 还是使用mybatisPlus自带的curd, 可以避免许多不必要的麻烦, 将精力放在处理Service上的业务逻辑

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

意田天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值