@TableLogic注解表示逻辑删除

所谓逻辑删除也就是不会删除实际的数据表结构数据,仅仅是对字段进行标记删除数据,具体解释为:

使用@TableLogic注解表示逻辑删除,标注在使用的实体类字段上如下:

@TableLogic
private Integer isDelete;

在以上的字段中进行标注就会出现,

调用BaseMapper的deleteById(id)或者调用IService的removeById(id)时执行的SQL语言脚本变化为:

delete from table where id = 1

转化:

Update table set isDelete = 1 where id = 1

简单来说,就是仅仅是在要进行删除的数据库行数上做个标记,表示数据已经删除了,但是不会修改内容,
主要是为了以后可以进行手动的恢复。

@TableLogic注解中包括两个参数:

@TableLogic(value="原值",delval="改值")
 	value = "" 未删除的值,默认值为0
	delval = "" 删除后的值,默认值为1

也就是将数据库中isDelete的0置为1表示数据已经处在删除状态了。