在实际开发中我们会遇到逻辑删除的业务场景,当我们使用mybatis-plus时可以使用其中注解@TableLogic来方便实现逻辑删除的操作。
@TableLogic注解表示逻辑删除
@TableLogic注解参数
value = "" 未删除的值,默认值为0
delval = "" 删除后的值,默认值为1
@TableLogic(value="",delval="")
效果:在字段上加上这个注解再执行BaseMapper的删除方法时,删除方法会变成修改
场景:
1、实体类中属性加上@TableLogic,
@TableLogic
private Integer delFlag;
2、调用BaseMapper中的delete相关方法
效果:
- 没有@TableLogic注解,直接删除数据。(执行delete方法)
- 有注解走Update方法
SQL:Update table set delFlag= 1
扩展
当使用了@TableLogic注解,调用update方法是并不会将该字段放入修改字段中,而是在条件字段中。即使你给delFlag赋值也不会修改。