mybatisplus update更新操作的三种方式
1.根据id更新
//实体类
User user = new User();
user.setUserId(1);
user.setAge(18);
userMapper.updateById(user);
2.条件构造器作为参数进行更新
//把名字为zwj的用户年龄更新为18,其他属性不变
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","zwj");
User user = new User();
user.setAge(19);
userMapper.update(user, updateWrapper);
只更新一个字段在使用updateWrapper 的构造器中也需要构造一个实体对象,这样比较麻烦。
也可以使用updateWrapper的set方法,下面↓
//只更新一个属性,把名字为zwj的用户年龄更新为18,其他的属性不变
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","zwj").set("age", 18);
userMapper.update(null, updateWrapper);
3.lambda构造器,本人经常使用,看起来逼格满满的,看个人喜好使用~
LambdaUpdateWrapper<User> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(User::getName, "zwj")
.set(User::getAge, 18)
.set(User::getHeight, 180)
.set(User::getBodyWeight, 60);
userMapper.update(null, lambdaUpdateWrapper);