如果你发现 MyBatis-Plus 的全局配置逻辑删除没有生效,可能的原因有:
全局配置没有正确设置:确保你已经在 mybatis-plus-global-config.json 或者配置类中正确配置了 global-config.db-config.logic-delete-field 和 global-config.db-config.logic-delete-value。
实体字段注解不正确:确保你的实体类中使用 @TableLogic 注解标记了逻辑删除字段,并且字段类型与数据库中的类型匹配。
版本问题:确保你使用的 MyBatis-Plus 版本支持全局配置逻辑删除。
条件构造器使用错误:如果你在使用条件构造器时没有按照 MyBatis-Plus 的要求使用逻辑删除的条件,也会导致逻辑删除不生效。
解决方法:
检查并正确配置全局逻辑删除配置。
确保实体类中逻辑删除字段使用 @TableLogic 注解,并且注解中的值与数据库中的值相匹配。
升级到最新稳定版本的 MyBatis-Plus。
使用逻辑删除相关方法构建查询条件,如 QueryWrapper 或 LambdaQueryWrapper 应该使用 logicDelete 方法而不是 delete 方法。
具体步骤需要根据实际情况调整,但大致方向是检查和调整配置,确保实体类和逻辑删除条件的正确使用。
注意:本文归作者所有,未经作者允许,不得转载