日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java web逻辑删除代码_MyBatis-Plus之逻辑删除的实现

發(fā)布時(shí)間:2025/3/11 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java web逻辑删除代码_MyBatis-Plus之逻辑删除的实现 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

特別是互聯(lián)網(wǎng)項(xiàng)目,對(duì)于數(shù)據(jù)一般是不能刪除的(涉及到后面的數(shù)據(jù)分析),這就涉及到邏輯刪除。所謂邏輯刪除指的是數(shù)據(jù)并不是真正的刪除,只是改數(shù)據(jù)表對(duì)應(yīng)數(shù)據(jù)的狀態(tài)(數(shù)據(jù)表中通常有一列叫delFlag,以此標(biāo)識(shí)正常狀態(tài)或刪除狀態(tài))。邏輯刪除一般都是更新操作,但寫(xiě)大量更新方法無(wú)疑是增加代碼量,MyBatis-Plus又是如何實(shí)現(xiàn)邏輯刪除的呢?其實(shí)很簡(jiǎn)單一共兩步。

一、配置文件配置

mybatis-plus:

global-config:

db-config:

logic-delete-value: 1 # 邏輯已刪除值(默認(rèn)為 1)

logic-not-delete-value: 0 # 邏輯未刪除值(默認(rèn)為 0)

二、數(shù)據(jù)模型實(shí)體添加注解

使用 @TableLogic注解

package com.blog.tutorial.entity;

import com.baomidou.mybatisplus.annotation.*;

import com.baomidou.mybatisplus.extension.activerecord.Model;

import lombok.Data;

import java.util.Date;

/**

*

* *

* * @author youcong

* @since 2020-04-18

*/@Data

@TableName("wp_users")

public class Users extends Model {

private static final long serialVersionUID = 1L;

@TableId(value = "ID", type = IdType.AUTO)

private Long id;

@TableField("user_login")

private String userLogin;

@TableField("user_pass")

private String userPass;

@TableField("user_nicename")

private String userNicename;

@TableField("user_email")

private String userEmail;

@TableField("user_url")

private String userUrl;

@TableField("user_registered")

private Date userRegistered;

@TableField("user_activation_key")

private String userActivationKey;

@TableLogic

@TableField("user_status")

private Integer userStatus;

@TableField("display_name")

private String displayName;

}

完成上面兩步,在第三步我們可以進(jìn)行測(cè)試。

三、測(cè)試

刪除用戶(hù)表的這個(gè)用戶(hù),如圖:

數(shù)據(jù)是否刪除在于user_status是否改變,如果變成1,說(shuō)明邏輯刪除生效。

如果user_status還是為0或者這條數(shù)據(jù)不在了(物理刪除了),說(shuō)明邏輯刪除失效。

測(cè)試Controller代碼:

@PostMapping("/del")

public Map del(Integer id) {

Map returnMap = new HashMap<>();

returnMap.put("code", "200");

returnMap.put("msg", "刪除成功");

usersService.removeById(id);

return returnMap;

}

使用PostMan測(cè)試,如圖:

控制臺(tái)打印,如圖:

刷新數(shù)據(jù)表,查看該用戶(hù)數(shù)據(jù)是否變動(dòng),如圖:

果然變動(dòng)了,說(shuō)明邏輯刪除生效。

到此這篇關(guān)于MyBatis-Plus之邏輯刪除的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)MyBatis-Plus 邏輯刪除內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

總結(jié)

以上是生活随笔為你收集整理的java web逻辑删除代码_MyBatis-Plus之逻辑删除的实现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。