mybatis-plus update
版本:3.0+
根據id更新
User user = new User();
user.setUserId(1);
user.setAge(29);
user.updateById();
or
Integer rows = userMapper.updateById(user);
條件構造器作為參數進行更新
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","shimin");
User user = new User();
user.setAge(18);
Integer rows = userMapper.update(user, updateWrapper);
條件構造器Set方法
假設只更新一個字段在使用updateWrapper 的構造器中也需要構造一個實體對象,這樣比較麻煩。可以使用updateWrapper的set方法
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","shimin").set("age", 35);
Integer rows = userMapper.update(null, updateWrapper);
lambda構造器
LambdaUpdateWrapper
LambdaUpdateWrapper<User> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.eq(User::getRealName, "shimin").set(User::getAge, 34);
Integer rows = userMapper.update(null, lambdaUpdateWrapper);
LambdaUpdateChainWrapper
LambdaUpdateChainWrapper<User> lambdaUpdateChainWrapper = new LambdaUpdateChainWrapper<>(userMapper);
boolean update = lambdaUpdateChainWrapper.eq(User::getRealName, "shimin").set(User::getAge, 33).update();
//分步寫
lambdaUpdateChainWrapper.eq(User::getRealName, "shimin");
if (user.getAge == 33) {
lambdaUpdateChainWrapper.set(User::getAge, 33);
}
lambdaUpdateChainWrapper.update();