MybatisPlus之逻辑删除的坑

Springboot的配置方式

#mybatis 配置文件映射 mybatis-plus: mapper-locations: classpath:/mapper/*Mapper.xml typeAliasesPackage: com.siyuan.card.model _# 以下配置均有默认值,可以不设置 _ global-config: db-config: _#主键类型 AUTO:"数据库ID自增" INPUT:"用户输入ID",ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID"; _ id-type: _auto _ _#字段策略 IGNORED:"忽略判断" NOT_NULL:"非 NULL 判断") NOT_EMPTY:"非空判断" _ field-strategy: _NOT_EMPTY _ _#数据库类型 _ db-type: _MYSQL _ _# 逻辑已删除将删除标志字段deleted置为1 _ logic-delete-value: 1 _# 逻辑未删除将删除标志字段deleted置为0 _ logic-not-delete-value: 0

在MybatisPlusConfig中新增bean(3.1.1以下)

import com.baomidou.mybatisplus.core.injector.ISqlInjector; import com.baomidou.mybatisplus.extension.injector.LogicSqlInjector; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;

@Configuration public class MybatisPlusConfig {

1@Bean 2public ISqlInjector sqlInjector() { 3 return new LogicSqlInjector(); 4}

}

在实体类字段上加上@TableLogic注解

_/** _ * 是否删除(1-删除,0-未删除) */ @TableLogic @TableField(value = "isDelete") private Integer isDelete;

调用mybatisPlus的删除方法

@PostMapping("/deleteUser") public ResponseData deleteUser(String Id){ boolean flag= iUserService.removeById(Id); ResponseData result = null; if(flag){ result=ResponseDataUtil.buildSuccess(); }else { result=ResponseDataUtil.buildError(); } return result; }

进数据库找到一条测试数据,删除标识为0的

然后现在进行postman的调用

再去查看数据库的这条数据

点赞
收藏

评论区

加载中...

相关推荐

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

springboot集成swagger2多模块中文配置详细步骤,解决集成mybatis或mybatis

springboot集成swagger2多模块中文配置详细步骤,解决集成mybatis或mybatisplus无法正常使用问题参考文章:(1)springboot集成swagger2多模块中文配置详细步骤,解决集成mybatis或mybatisplus无法正常使用问题(https://www.oschina.net/action/Go

springboot2整合mybatis

前言最近在进行项目重构,在架构师的建议下,就把项目中mybatis切换成mybatisplus。因为mybatisplus在mybatis的基础上只做增强不做改变,因此切换的成本很低,就只需改jar和配置内容,原先的代码无需改动。因为mybatisplus对mybatis的友好支持,我们花了一点时间就把mybatis改成mybatis

java判断通常的逻辑

packagecom.stylefeng.guns.core.common.constant.factory;importcom.baomidou.mybatisplus.mapper.EntityWrapper;importcom.baomidou.mybatisplus.mapper.Wrapper;importcom.style

SpringBoot2.4.x整合Mybatis-Plus3.4.x(详细教程)

Mybatis和MybatisPlus的区别与联系MybatisPlus是一个Mybatis的增强工具,只是在Mybatis的基础上做了增强却不做改变,MyBatisPlus支持所有Mybatis原生的特性,所以引入MybatisPlus不会对现有的Mybatis构架产生任何影。MybatisPlus又简称(MP)是为简化开发,提高开发效率而生正如官网所说

SpringMVC与SpringBoot配置文件的加载区别

一、SpringMVC:配置文件在classpath下。在web.xml中配置加载。以下项目为示例其中引用关系为1. applicationContextdao.xml引用了mybatis文件夹中的配置文件2. applicationContextshiro.xml引用了shiro文件夹中的配置文件3. sprin