数据库表中添加逻辑删除字段
delete_flag
int DEFAULT NULL COMMENT ‘0:未删除 1:已删除’,
方式一
mybatis-plus:
mapper-locations: classpath*:mapper/*.xml
global-config:
db-config:
logic-delete-field: delete_flag #逻辑删除字段
logic-delete-value: 1 #逻辑删除值
logic-not-delete-value: 0 #逻辑未删除值
方式二
/**
* value = "0" 逻辑未删除值
* delval = "1" 逻辑删除值
*/
@TableLogic(value = "0",delval = "1")
@TableField(value = "delete_flag",fill = FieldFill.INSERT)
private int delete_flag;
IUserService
public interface IUserService extends IService<User> {
int deleteUser(int id);
}
UserServiceImpl
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IUserService {
@Autowired
private UserMapper userMapper;
@Override
public int deleteUser(int id) {
return userMapper.deleteById(id);
}
}
Controller
@RestController
@RequestMapping("/api/user")
public class UserController {
@Autowired
private UserMapper userMapper;
@Autowired
private IUserService userService;
@RequestMapping("/add")
public Result add(@RequestBody User user){
int i = userMapper.insert(user);
return Result.success(i);
}
@RequestMapping("/del/{id}")
public Result deleteUserById(@PathVariable Integer id){
int i = userService.deleteUser(id);
return Result.success(i);
}
}
启用接口,新增一条用户数据
记录
删除记录
记录
数据库中delete_flag字段的值从0更新为1