MyBatis插件在insert数据后返回ID

Mybaitis插件现在大家应该用的很多了,简单的单表查询,修改,新增都可以胜任,没必要我们之前自己苦哈哈的自己去写对应SQL语句,一方面重复性太高,没啥技术含量,而且写的太多了,弄的mapper文件特别长,维护阅读起来都很麻烦。

我们只是在一些需要联表或者处理逻辑处理某些字段时去定义mapper里面的SQL(不要想着可以脱离SQL,这是不可能的。业务足够复杂,SQL还是很好用的,本身支持的一些函数会帮助你在代码中简化逻辑)

最常用的mybatis插件有mybaitis plus和tk mybatis,这两个实际有很多地方是相同的,可能有些相同的操作就是名字不一样而已(我的微信公众号:我是坑货),我这里以我项目中tk mybatis来举例子。

在tk mybatis里面不管你时用的自增主键insertUseGeneratedKeys还是直接insert进去,返回的结果可能是insert操作的影响行数,而你想要的是返回主键Id。

这时候我们只要在你的对应DAO层entity(就是你mapper文件对应的那个文件)加上如下的两个注解:@Id和 @GeneratedValue(generator = “JDBC”),我的微信公众号:我是坑货,这俩缺一不可

	@Id
	@GeneratedValue(generator = "JDBC")
	@JSONField(name = "erpCustomerId")
	private Long id;

这时候可以通过对象直接获取id像下面代码所示:

 erpCustomerMapper.insertUseGeneratedKeys(erpCustomerDO);
 Long id = erpCustomerDO.getId();

希望这个能对插件了解不够很清楚的小伙伴有用处,不要自己去写SQL走冤枉路。
我的微信公众号:我是坑货

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值