欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用mybatis-plus想要修改某字段為null問題

 更新時(shí)間:2023年02月22日 15:28:31   作者:普通網(wǎng)友  
這篇文章主要介紹了使用mybatis-plus想要修改某字段為null問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mybatis-plus想要修改某字段為null

問題場景

使用mybatis + mybatisPlus進(jìn)行修改某字段,想要將其設(shè)為null, 但執(zhí)行時(shí)沒有成功。

原因

mybatis-plus會(huì)將所有為空的字段在修改時(shí)進(jìn)行過濾,不進(jìn)行設(shè)為空的修改操作。

解決辦法

在相關(guān)字段上加上注解

@TableField(strategy = FieldStrategy.IGNORED)

例:

@TableField(strategy = FieldStrategy.IGNORED)
private Long classId;

mybatis-plus更新字段為null不生效

異常說明

mapper.updateById()時(shí),set為null未生效,其他字段更新

periodRecordOriginal.setSettleTime(null);
periodRecordOriginal.setActualSettleTime(null);
periodRecordOriginal.setSettleStatus(0);
int i = periodRecordMapper.updateById(periodRecordOriginal);

原理

MyBatis-Plus對(duì)字段的驗(yàn)證策略導(dǎo)致的,MyBatis-Plus默認(rèn)進(jìn)?了不是全量更新的策略,默認(rèn)忽略為null 的字段的

解決辦法

1)修改MyBatis-Plus 全局默認(rèn)策略

缺點(diǎn):這樣做會(huì)對(duì)所有的字段都忽略判斷,如果一些字段不想要修改,但是傳值的時(shí)候沒有傳遞過來,就會(huì)被更新為null

mybatis-plus:
? global-config:
? ?? ?#字段策略 0:"忽略判斷",1:"非 NULL 判斷",2:"非空判斷"
? ? field-strategy: 0

2)修改實(shí)體類注解,改變字段的忽略判斷

缺點(diǎn):需要注意數(shù)據(jù)庫字段是否設(shè)置為 非null ,如果為非null 也更新不成功

@TableField( updateStrategy = FieldStrategy.IGNORED)
? ? private Date settleTime;

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 一文探究ArrayBlockQueue函數(shù)及應(yīng)用場景

    一文探究ArrayBlockQueue函數(shù)及應(yīng)用場景

    這篇文章主要為大家介紹了一文探究ArrayBlockQueue函數(shù)及應(yīng)用場景,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • Java并發(fā)編程中的CyclicBarrier線程屏障詳解

    Java并發(fā)編程中的CyclicBarrier線程屏障詳解

    這篇文章主要介紹了Java并發(fā)編程中的CyclicBarrier線程屏障詳解,
    2023-12-12
  • Java ThreadLocal的使用詳解

    Java ThreadLocal的使用詳解

    ThreadLocal是線程私有的局部變量存儲(chǔ)容器,可以理解成每個(gè)線程都有自己專屬的存儲(chǔ)容器,用來存儲(chǔ)線程私有變量。ThreadLocal 在日常開發(fā)框架中應(yīng)用廣泛,但用不好也會(huì)出現(xiàn)各種問題,本文就此講解一下。
    2021-05-05
  • Java中?springcloud.openfeign應(yīng)用案例解析

    Java中?springcloud.openfeign應(yīng)用案例解析

    使用OpenFeign能讓編寫Web?Service客戶端更加簡單,使用時(shí)只需定義服務(wù)接口,然后在上面添加注解,OpenFeign也支持可拔插式的編碼和解碼器,這篇文章主要介紹了Java中?springcloud.openfeign應(yīng)用案例解析,需要的朋友可以參考下
    2024-06-06
  • Spring Security LDAP實(shí)現(xiàn)身份驗(yàn)證的項(xiàng)目實(shí)踐

    Spring Security LDAP實(shí)現(xiàn)身份驗(yàn)證的項(xiàng)目實(shí)踐

    在本文中,我們涵蓋了“使用 Spring Boot 的 Spring Security LDAP 身份驗(yàn)證示例”的所有理論和示例部分,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • ThreadLocal內(nèi)存泄漏問題解決方案

    ThreadLocal內(nèi)存泄漏問題解決方案

    這篇文章主要介紹了ThreadLocal內(nèi)存泄漏問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java切面(Aspect)的多種實(shí)現(xiàn)方式

    Java切面(Aspect)的多種實(shí)現(xiàn)方式

    這篇文章主要給大家介紹了關(guān)于Java切面(Aspect)的多種實(shí)現(xiàn)方式,在Java開發(fā)中切面(Aspect)是一種常用的編程方式,用于實(shí)現(xiàn)橫切關(guān)注點(diǎn)(cross-cutting concern),需要的朋友可以參考下
    2023-08-08
  • MyBatis實(shí)現(xiàn)字段加解密的實(shí)踐

    MyBatis實(shí)現(xiàn)字段加解密的實(shí)踐

    為了數(shù)據(jù)安全問題,有時(shí)候需要將部分敏感字段加密后再入庫,本文主要介紹了MyBatis實(shí)現(xiàn)字段加解密的實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11
  • 詳解springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法

    詳解springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法

    在本篇文章中我們給大家詳細(xì)分享了springboot采用多數(shù)據(jù)源對(duì)JdbcTemplate配置的方法,有需要的朋友們可以學(xué)習(xí)參考下。
    2018-10-10
  • 異常排查記錄amqp協(xié)議鏈接陷阱

    異常排查記錄amqp協(xié)議鏈接陷阱

    這篇文章主要介紹了一次關(guān)于amqp協(xié)議鏈接陷阱-An?unexpected?connection?driver?error?occured的異常排查記錄,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2022-02-02

最新評(píng)論