Mybatis-Plus實(shí)現(xiàn)只更新部分字段的數(shù)據(jù)
Mybatis-Plus只更新部分字段數(shù)據(jù)
1、通過(guò)UpdateWrapper修改指定的列
update 時(shí)傳入 null 是關(guān)鍵
重點(diǎn)語(yǔ)句:updateWrapper.set(“SESSION_KEY”, “abc”);
this.mapper.update(null, wrapperUpdate);
2、使用場(chǎng)景和案例
使用版本:3.0.4
UpdateWrapper updateWrapper = new UpdateWrapper();
updateWrapper.eq("id", 1);
updateWrapper.set("status", ?1);
updateWrapper.set("nickname", ?"張三");
baseMapper.update(null, updateWrapper);Mybatis-Plus更新字段問(wèn)題
mybatis更新為 null的對(duì)象 ,需設(shè)置 :
spring-boot設(shè)置
mybatis-plus.global-config.db-config.field-strategy=ignored
屬性設(shè)置有4種策略
public enum FieldStrategy {
? ? IGNORED, ? ? ? #忽略判斷
? ? NOT_NULL, ? ? ?#非 null 判斷
? ? NOT_EMPTY, ? ? # 非空判斷
? ? DEFAULT;
?
? ? private FieldStrategy() {
? ? }
}設(shè)置為忽略判斷之后 ,用查詢方法 :
public List<T> list(Wrapper<T> queryWrapper) {
? ? return this.baseMapper.selectList(queryWrapper);
}則查詢時(shí)候 :
SELECT id,level_code,scale,rate,interest,expire_date,factor_day,product_id,create_by,create_time,update_by,update_time,version,enable,remark FROM 表 WHERE level_code=null AND scale=null AND rate=null AND interest=null AND expire_date=null AND factor_day=null AND product_id=80 AND create_by=null AND create_time=null AND update_by=null AND update_time=null AND version=null AND enable=null AND remark=null
在mybatis-plus 3.1.2之后,fieldStrategy已被棄用 ,可以分別設(shè)置 :
selectStrategy(since 3.1.2) updateStrategy(since 3.1.2) insertStrategy(since 3.1.2)
官方文檔 : https://mp.baomidou.com/config/#logicdeletevalue
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用JPA主鍵@Id,@IdClass,@Embeddable,@EmbeddedId問(wèn)題
這篇文章主要介紹了使用JPA主鍵@Id,@IdClass,@Embeddable,@EmbeddedId問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
理解Java中的靜態(tài)綁定和動(dòng)態(tài)綁定
這篇文章主要幫助大家理解Java中的靜態(tài)綁定和動(dòng)態(tài)綁定,在Java中存在兩種綁定方式,一種為靜態(tài)綁定,另一種就是動(dòng)態(tài)綁定,亦稱為后期綁定,感興趣的小伙伴們可以參考一下2016-02-02
Java使用FastExcel導(dǎo)入支持多種時(shí)間格式
FastExcel 是一個(gè)采用純 java 開(kāi)發(fā)的 excel 文件讀寫組件,支持 Excel'97(-2003)(BIFF8)文件格式,本文主要介紹了如何使用FastExcel導(dǎo)入支持多種時(shí)間格式,感興趣的可以了解2024-12-12
解決java.lang.StringIndexOutOfBoundsException: String&nbs
這篇文章主要介紹了解決java.lang.StringIndexOutOfBoundsException: String index out of range: -1錯(cuò)誤問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-03-03
Java Web項(xiàng)目中驗(yàn)證碼功能的制作攻略
使用servlet制作驗(yàn)證碼中最關(guān)鍵的部分是緩存的使用,驗(yàn)證session中的字符串,接下來(lái)我們就來(lái)看一下Java Web項(xiàng)目中驗(yàn)證碼功能的制作攻略2016-05-05
詳解SpringBoot中RestTemplate的幾種實(shí)現(xiàn)
這篇文章主要介紹了詳解SpringBoot中RestTemplate的幾種實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11

