亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MyBatis-Plus的物理刪除和邏輯刪除(使用場(chǎng)景)

 更新時(shí)間:2021年09月25日 11:23:17   作者:是草莓味的啊  
數(shù)據(jù)庫中的數(shù)據(jù)刪除會(huì)分為兩種:物理刪除 和 邏輯刪除,接下來通過本文給大家介紹MyBatis-Plus的物理刪除和邏輯刪除使用場(chǎng)景分析,感興趣的朋友一起看看吧

物理刪除:真實(shí)刪除,將數(shù)據(jù)從數(shù)據(jù)庫中刪除,刪除后查詢不到被刪除的數(shù)據(jù)

邏輯刪除:假刪除,方便刪除之后的數(shù)據(jù)恢復(fù)
在表中添加一個(gè)status字段,作為刪除的標(biāo)準(zhǔn),每次刪除時(shí),修改標(biāo)志位,0代表沒有刪除,1代表刪除
被刪除記錄的status字段被修改為“被刪除狀態(tài)”(1),刪除后還可以查詢到數(shù)據(jù)

邏輯刪除的使用場(chǎng)景
1.需要進(jìn)行數(shù)據(jù)恢復(fù)
2.有關(guān)聯(lián)數(shù)據(jù),不便刪除

# mysql
//測(cè)試邏輯刪除
status int null default null
# 實(shí)體類
//實(shí)現(xiàn)邏輯刪除
@TableLogic
@TableField(fill=FieldFill.INSERT)   //為了方便測(cè)試
private Integer status;
# MpConfig配置類
//status在添加時(shí)自動(dòng)填充默認(rèn)為0,未被刪除狀態(tài)(1是被刪除狀態(tài))
this.setFieldValByName("status",0,metaObject);
# Test測(cè)試類

//先添加測(cè)試數(shù)據(jù)
@Test
public void testAdd(){
	User user=new User();
	//沒有設(shè)置id屬性主鍵自增長(zhǎng),但mybatis-plus會(huì)使用主鍵策略自動(dòng)生成id值
	user.setName("wangwu");
	user.setAge(18);
	user.setEmail("licy@163.com");
	int insert=userMapper.insert(user);
	System.out.println(insert);
}

//再測(cè)試邏輯刪除
//在表中添加一個(gè)status字段,作為刪除的標(biāo)準(zhǔn),每次刪除時(shí),修改標(biāo)志位,0代表沒有刪除,1代表刪除
//UPDATE user SET status=1 WHERE id=? AND status=0 查詢條件有一個(gè)status=0,即查詢的都是沒有被刪除過的記錄,被刪除過的記錄就不會(huì)被查詢出來了
@Test
public void testDeleteByLogic(){
	int rows=userMapper.deleteById(1441596779656179713L);     //在做了邏輯刪除的配置后,再使用id進(jìn)行刪除,執(zhí)行的語句變成了修改id=?并且status為0的記錄,如果status原來就是1(被刪除過了),也不會(huì)再被刪除,
	System.out.println(rows);
}

先添加測(cè)試數(shù)據(jù)
請(qǐng)?zhí)砑訄D片描述
再測(cè)試邏輯刪除
請(qǐng)?zhí)砑訄D片描述

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

相關(guān)文章

  • 詳解Java進(jìn)階知識(shí)注解

    詳解Java進(jìn)階知識(shí)注解

    這篇文章主要介紹了詳解Java進(jìn)階知識(shí)注解,從注解的定義、元注解、自定義注解、注解實(shí)例這幾個(gè)方面,讓同學(xué)們更加深入的了解注解
    2021-04-04
  • 深入解讀MVC模式和三層架構(gòu)

    深入解讀MVC模式和三層架構(gòu)

    這篇文章主要介紹了深入解讀MVC模式和三層架構(gòu),三層架構(gòu)就是為了符合“高內(nèi)聚,低耦合”思想,把各個(gè)功能模塊劃分為表示層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問層(DAL)的三層架構(gòu),各層之間采用接口相互訪問,需要的朋友可以參考下
    2023-04-04
  • javaWeb自定義標(biāo)簽用法實(shí)例詳解

    javaWeb自定義標(biāo)簽用法實(shí)例詳解

    這篇文章主要介紹了javaWeb自定義標(biāo)簽用法,結(jié)合實(shí)例形式分析了javaweb自定義標(biāo)簽的功能、定義方法及執(zhí)行原理,需要的朋友可以參考下
    2017-04-04
  • Spring的實(shí)例工廠方法和靜態(tài)工廠方法實(shí)例代碼

    Spring的實(shí)例工廠方法和靜態(tài)工廠方法實(shí)例代碼

    這篇文章主要介紹了Spring的實(shí)例工廠方法和靜態(tài)工廠方法實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • java導(dǎo)出Excel(非模板)可導(dǎo)出多個(gè)sheet方式

    java導(dǎo)出Excel(非模板)可導(dǎo)出多個(gè)sheet方式

    Java開發(fā)中,導(dǎo)出Excel是常見需求,有時(shí)需要支持多個(gè)Sheet導(dǎo)出,此技巧介紹非模板方式實(shí)現(xiàn)單標(biāo)題單Sheet以及多Sheet導(dǎo)出,標(biāo)題一致或不一致均可,可換成Map使用,適合個(gè)人開發(fā)者和需要Excel導(dǎo)出功能的場(chǎng)景
    2024-09-09
  • java分割字符串多種方法(附例子)

    java分割字符串多種方法(附例子)

    這篇文章主要給大家介紹了關(guān)于java分割字符串多種方法的相關(guān)資料,Java中有多種方法可以實(shí)現(xiàn)字符串分割,文中將每張方法都給出了代碼示例,需要的朋友可以參考下
    2023-10-10
  • java實(shí)現(xiàn)IP地址轉(zhuǎn)換

    java實(shí)現(xiàn)IP地址轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)IP地址轉(zhuǎn)換,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java過濾XSS腳本攻擊詳細(xì)代碼示例

    Java過濾XSS腳本攻擊詳細(xì)代碼示例

    這篇文章主要介紹了Java過濾XSS腳本攻擊的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • mybatis?實(shí)現(xiàn)字段大小寫賦值

    mybatis?實(shí)現(xiàn)字段大小寫賦值

    這篇文章主要介紹了mybatis?實(shí)現(xiàn)字段大小寫賦值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • java?實(shí)現(xiàn)獲取指定位置后的第一個(gè)數(shù)字

    java?實(shí)現(xiàn)獲取指定位置后的第一個(gè)數(shù)字

    這篇文章主要介紹了java?實(shí)現(xiàn)獲取指定位置后的第一個(gè)數(shù)字,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01

最新評(píng)論