Mybatis中方向生成中updateByPrimaryKey,updateByPrimaryKeySelective,selectByExample的用法以及误区

本文介绍了Mybatis中updateByPrimaryKey和updateByPrimaryKeySelective的区别与用法,强调了Selective关键字在更新操作中的作用。updateByPrimaryKey会更新所有字段,即使值为null,而updateByPrimaryKeySelective则会忽略值为null的字段。此外,还讲解了selectByExample的使用,它是用于动态多条件查询的重要工具。
摘要由CSDN通过智能技术生成

Mybatis中方向生成中updateByPrimaryKey,updateByPrimaryKeySelective,selectByExample的用法以及误区

最近开始学习了MyBits反向生成的XML,节约大量了我们自己去写SQL语句的时候,对我们来说是一大福利,但是由于调用的方法是生成的时候自动生成的,难免我们会误解,我总结了三个比较容易用到并且容易用错的三个,希望对大家有帮助~

updateByPrimarykey以及updateByPrimaryKeySelective用法与区别

区别:1.很容易发现,这两个方法差距在“Selective”(选择性的)
2. 两个方法都是根据主键更新,但是,一个是更新的部分有选择的,一个没有的。
3.updateByPrimaryKey传递过来的对象,假如数据库有name=卢本伟,但是传递过来的对象中name=null,使用该方法就会导致数据库中的name就祭天了。但是用updateByPrimaryKeySelective的话就不会了,如果对象中name=null,那么就会直接跳过,就不会祭天了,所以你打算用那个呢?

在这里插入图片描述

用法:@Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int updateStateCourier(Courier courier){
    return courierMapper.updateByPrimaryKey(courier);

}在这里插入图片描述
在这里插入图片描述

updateByPrimaryKeySelective就不用解释啦

selectByExample的使用:

用法࿱
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值