MybatisPlus可以通过以下步骤来实现逻辑删除:
在实体类中添加一个标识逻辑删除的字段,例如deleteFlag
,并使用@TableLogic
注解标记该字段为逻辑删除字段。@TableLogicprivate Integer deleteFlag;
在配置文件中开启逻辑删除功能。在application.yml
或application.properties
文件中添加以下配置:mybatis-plus: global-config: db-config: logic-delete-field: deleteFlag # 配置逻辑删除字段 logic-delete-value: 1 # 配置逻辑删除的值 logic-not-delete-value: 0 # 配置未删除的值
在Mapper接口中继承BaseMapper
,并使用@Repository
注解将该接口声明为一个Spring Bean。@Repositorypublic interface UserMapper extends BaseMapper<User> {}
使用MybatisPlus提供的方法进行逻辑删除操作,例如deleteById
方法。@Autowiredprivate UserMapper userMapper;public void deleteUserById(Long id) { userMapper.deleteById(id);}
注意:逻辑删除并不会真正从数据库中删除数据,而是将deleteFlag
字段的值更新为配置的逻辑删除值。