mybatis plus 更新为null
@Test
public void userTest(){
//正常情况下不会设置成null
UserModel user = new UserModel();
user.setUseStatus(1);
LambdaQueryWrapper<UserModel> queryWrapper = Wrappers.lambdaQuery(UserModel.class)
.eq(UserModel::getBankAccountId, 1);
UserMapper.update(user,queryWrapper);
//可以直接更新成null
LambdaUpdateWrapper<UserModel> wrapper = Wrappers.lambdaUpdate(UserModel.class)
.set(UserModel::getUseStatus, 1)
.set(UserModel::getModifyUserId,null) //可以直接更新成null
.eq(UserModel::getBankAccountId, 1);
UserMapper.update(null, wrapper);
//放在 entity 这种不能将属性设置成null
UserModel entity = new UserModel();
entity.setUseStatus(3);
entity.setModifyUserId(null); //放在 entity 这种不能将属性设置成null
LambdaUpdateWrapper<UserModel> wrapper1 = Wrappers.lambdaUpdate(UserModel.class)
.eq(UserModel::getBankAccountId, 1);
UserMapper.update(entity, wrapper1);
}
结论,只有通过 LambdaUpdateWrapper 设置null值才可以更新成null