SpringBoot+Mybatis-Plus实现逻辑删除
所谓逻辑删除根本上就是我们指定一个字段更改它的状态来标记这条数据是否被删除,和普通的删除相比逻辑删除的数据并不会真正的丢失,只是不展示出来而已。但是我们在查询的时候也是要考虑到的。Mybatis-Plus提供了这个功能。
官网的截图:侵删
注意只对自动注入的sql有效,自己去写的sql还是要加入限制条件的
下面就讲怎么去使用
1. 建表
必须要有代表逻辑删除的字段,类型在第一张图里 最好将这个字段设置成初始值为0,代表着未删除
CREATE TABLE `user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名',
`password` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '密码',
`age` int(10) NULL DEFAULT NULL COMMENT '年龄',
`deleted` int(1) NULL DEFAULT NULL COMMENT '是否删除',
PRIMARY KEY (`id`) USING BTREE
)
2. 创建一个Spring boot项目
具体怎么来可以百度搜
大约是这种结构,小鸟是因为插件
3. 引入依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version&