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

mybatis-plus更新策略部分字段不更新問題

 更新時(shí)間:2024年03月20日 11:41:11   作者:傲太白  
這篇文章主要介紹了mybatis-plus更新策略部分字段不更新問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

mybatis-plus更新策略部分字段不更新

直接上代碼

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.ANNOTATION_TYPE})
public @interface TableField {
    String value() default "";

    boolean exist() default true;

    String condition() default "";

    String update() default "";

    FieldStrategy insertStrategy() default FieldStrategy.DEFAULT; //新增

    FieldStrategy updateStrategy() default FieldStrategy.DEFAULT; //修改

    FieldStrategy whereStrategy() default FieldStrategy.DEFAULT;

    FieldFill fill() default FieldFill.DEFAULT;

    boolean select() default true;

    boolean keepGlobalFormat() default false;

    JdbcType jdbcType() default JdbcType.UNDEFINED;

    Class<? extends TypeHandler> typeHandler() default UnknownTypeHandler.class;

    String numericScale() default "";
}

五大策略

public enum FieldStrategy {
    IGNORED, //忽略
    NOT_NULL,    //字段不為null
    NOT_EMPTY,    //字段不為“”
    DEFAULT, //默認(rèn)
    NEVER;    //從不更新

    private FieldStrategy() {
    }
}

使用方法

@TableField(value = "create_user_id", updateStrategy = FieldStrategy.NEVER)
private int createUserId;//創(chuàng)建用戶ID

上述代碼表達(dá)意思是,修改時(shí)該字段從不更新。

mybatis-plus字段更新策略 FieldStrategy

public enum FieldStrategy {
    // 不管有沒有有設(shè)置屬性,所有的字段都會設(shè)置到insert語句中,如果沒設(shè)置值會更新為null 
    IGNORED,
    // 也是默認(rèn)策略,也就是忽略null的字段,不忽略""
    NOT_NULL,
    // 為null,為空串的忽略,就是如果設(shè)置值為null,“”,不會插入數(shù)據(jù)庫
    NOT_EMPTY,
    // 同NOT_NULL
    DEFAULT,
    // 一經(jīng)插入 永不更新 (etc:createTime)
    NEVER;

    private FieldStrategy() {
    }
}

總結(jié)

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

相關(guān)文章

  • mybatis+springboot中使用mysql的實(shí)例

    mybatis+springboot中使用mysql的實(shí)例

    在軟件開發(fā)中,數(shù)據(jù)庫的引入是必不可少的,這里來展現(xiàn)一下通過mybatis框架在springboot中使用mysql,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-07-07
  • Java中RabbitMQ延遲隊(duì)列實(shí)現(xiàn)詳解

    Java中RabbitMQ延遲隊(duì)列實(shí)現(xiàn)詳解

    這篇文章主要介紹了Java中RabbitMQ延遲隊(duì)列實(shí)現(xiàn)詳解,消息過期后,根據(jù)routing-key的不同,又會被死信交換機(jī)路由到不同的死信隊(duì)列中,消費(fèi)者只需要監(jiān)聽對應(yīng)的死信隊(duì)列進(jìn)行消費(fèi)即可,需要的朋友可以參考下
    2023-09-09
  • SpringBoot使用@Autowired為多實(shí)現(xiàn)的接口注入依賴

    SpringBoot使用@Autowired為多實(shí)現(xiàn)的接口注入依賴

    這篇文章主要介紹了SpringBoot使用@Autowired為多實(shí)現(xiàn)的接口注入依賴,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java中Lambda表達(dá)式基礎(chǔ)及使用

    Java中Lambda表達(dá)式基礎(chǔ)及使用

    這篇文章主要介紹了Lambda 是JDK 8 的重要新特性。它允許把函數(shù)作為一個(gè)方法的參數(shù)(函數(shù)作為參數(shù)傳遞進(jìn)方法中),使用 Lambda 表達(dá)式可以使代碼變的更加簡潔緊湊,使Java代碼更加優(yōu)雅,感興趣的小伙伴一起來學(xué)習(xí)吧
    2021-08-08
  • springboot?web項(xiàng)目中?Set-Cookie?失敗原因及解決辦法

    springboot?web項(xiàng)目中?Set-Cookie?失敗原因及解決辦法

    這篇文章主要介紹了springboot?web項(xiàng)目中?Set-Cookie?失敗原因及解決辦法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-10-10
  • Java實(shí)現(xiàn)的文件過濾代碼分享(按后輟過濾)

    Java實(shí)現(xiàn)的文件過濾代碼分享(按后輟過濾)

    這篇文章主要介紹了Java實(shí)現(xiàn)的文件過濾代碼分享,本文通過后輟名過濾,代碼寫簡潔,容易看懂,需要的朋友可以參考下
    2014-07-07
  • 如何在Java中判斷兩個(gè)Long類型是否相等

    如何在Java中判斷兩個(gè)Long類型是否相等

    這篇文章主要介紹了如何在Java中判斷兩個(gè)Long類型是否相等,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的?參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • Java中Mybatis分頁查詢的四種傳參方式

    Java中Mybatis分頁查詢的四種傳參方式

    這篇文章主要介紹了Java中Mybatis分頁查詢的四種傳參方式:順序傳參,@param傳參,自定義POJO類傳參,Map傳參,想詳細(xì)了解傳參方式的小伙伴可以詳細(xì)閱讀本文,有一定的而參考價(jià)值
    2023-03-03
  • 淺談java中為什么重寫equals后需要重寫hashCode

    淺談java中為什么重寫equals后需要重寫hashCode

    今天帶各位學(xué)習(xí)一下java中為什么重寫equals后需要重寫hashCode,文中有非常詳細(xì)的圖文介紹及代碼示例,對正在學(xué)習(xí)java的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • SpringBoot中的攔截器細(xì)節(jié)解析

    SpringBoot中的攔截器細(xì)節(jié)解析

    這篇文章主要介紹了SpringBoot中的攔截器細(xì)節(jié)解析,攔截器的概念、作用、實(shí)現(xiàn)方式、執(zhí)行順序、生命周期以及高級應(yīng)用,最后,我們還將探討攔截器的性能優(yōu)化策略和常見問題,需要的朋友可以參考下
    2023-09-09

最新評論