从1.7版本开始支持逻辑删除功能,即更新一个字段标记为已删除。查询的时候会自动过滤掉已删除的数据。
假设数据库表中有一个字段is_deleted类型为tinyint,0表示未删除,1表示已删除。
实体类对应代码如下:
public class User {
@LogicDelete private Byte isDeleted; }
在执行dao.del(user);时会触发UPDATE语句,将is_deleted字段更新为1。
如果is_deleted类型为char(1),f表示未删除,t表示已删除。
@LogicDelete(notDeleteValue = "f", deleteValue = "t")
private String isDeleted;