// 根据 ID 修改
int updateById(@Param(Constants.ENTITY) T entity);
传参
{
"id":1,
"name":"zoriah"
}
controller
/**
* 修改用户
*
* @param user 实体对象
* @return 修改结果
*/
@ApiOperation(value = "修改用户")
@PutMapping("/update")
public R update(@RequestBody User user) {
return success(this.userService.updateById(user));
}
SQL
UPDATE t_user SET name='zoriah' WHERE id = 1
使用提示:
在调用updateById方法前,需要在T entity(对应的实体类)中的主键属性上加上@TableId注解。
// 根据 whereWrapper 条件,更新记录
int update(@Param(Constants.ENTITY) T updateEntity, @Param(Constants.WRAPPER) Wrapper<T> whereWrapper);
// 作为查询条件
LambdaUpdateWrapper<User> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(User::getName,"zoriah");
//new出来的对象作为修改值
User user = new User();
user.setTelephone("12345678");
//直接update修改
this.update(user, updateWrapper);
SQL
UPDATE t_user SET telephone='12345678' WHERE name = 'zoriah'
使用提示:
LambdaUpdateWrapper若不能使用,更新mybatis-plus至高版本,或者
LambdaUpdateWrapper<User> updateWrapper = new UpdateWrapper<User>().lambda();