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

記錄一個(gè)使用Spring?Data?JPA設(shè)置默認(rèn)值的問題

 更新時(shí)間:2021年11月23日 11:40:31   作者:qq_34785454  
這篇文章主要介紹了使用Spring?Data?JPA設(shè)置默認(rèn)值的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Spring Data JPA設(shè)置默認(rèn)值的問題

我有一個(gè)entity實(shí)體,其中里面有一個(gè)布爾類型的字段:

//entity table注解略
public class TableEntity { 
    private Boolean b; 
 public Boolean getB() {
        return b;
    }    
    public void setB(Boolean b) {
        this.b= b;
    }
}

然后現(xiàn)在是需要給這個(gè)布爾型變量設(shè)默認(rèn)值true

一開始經(jīng)過百度,寫法是這樣的

//entity table注解略
public class TableEntity {
 @Column(name = "b", columnDefinition = "bit default 1", nullable = false)
    private Boolean b; 
 public Boolean getB() {
        return b;
    }    
    public void setB(Boolean b) {
        this.b= b;
    }
}

這個(gè)寫法其實(shí)應(yīng)該沒什么問題,當(dāng)時(shí)的數(shù)據(jù)庫是sql server,但是在換環(huán)境部署,切換到MySQL的時(shí)候出了問題,被懷疑是我這里寫的問題(其實(shí)我總感覺應(yīng)該沒什么關(guān)系)

于是改了第二版

//entity table注解略
public class TableEntity {
 @Column(name = "b", nullable = false)
    @org.hibernate.annotations.Type(type = "yes_no")
    private Boolean b = true; 
 public Boolean getB() {
        return b;
    }    
    public void setB(Boolean b) {
        this.b= b;
    }
}

直接把私有屬性值賦值,這也是通過百度之后,有部分文章說的一種方法,至于type那個(gè)注解,就是把布爾型變量在數(shù)據(jù)庫中通過字符型變量來存儲(chǔ),存儲(chǔ)"Y"或者"N"。

但是這個(gè)寫法,工程跑起來之后還是有問題的,存不上默認(rèn)值,等于白寫。

在大佬的指點(diǎn)下,有了第三種寫法

//entity table注解略
public class TableEntity {
 @Column(name = "b", nullable = false)
    @org.hibernate.annotations.Type(type = "yes_no")
    private Boolean b = true; 
 public Boolean getB() {
        if(b==null) {
            return true;
        }
        return b;
    }    
    public void setB(Boolean b) {
        if(b==null) {
            return;
        }
        this.b= b;
    }
}

大概意思是,在JPA進(jìn)行保存的時(shí)候框架內(nèi)部會(huì)自己調(diào)用get/set方法來進(jìn)行屬性賦值和取值,所以直接在get/set方法進(jìn)行默認(rèn)值的賦值就可以了。

實(shí)際測(cè)試效果拔群。

Jpa設(shè)置默認(rèn)值約束

使用SpringDataJpa設(shè)置字段的默認(rèn)值約束的2種方式

1、修改建表時(shí)的列定義屬性

@Column(columnDefinition="INT DEFAULT '1'")
private Integer status;

2、通過Hibernate(org.hibernate.annotations.ColumnDefault)

下提供的注解進(jìn)行設(shè)置默認(rèn)值

@ColumnDefault("1")
private Integer status;

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

相關(guān)文章

  • SpringBoot整合aop面向切面編程過程解析

    SpringBoot整合aop面向切面編程過程解析

    這篇文章主要介紹了SpringBoot整合aop面向切面編程過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Java指令重排在多線程環(huán)境下的解決方式

    Java指令重排在多線程環(huán)境下的解決方式

    這篇文章介紹了Java指令重排在多線程環(huán)境下的解決方式,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • 淺談Java引用和Threadlocal的那些事

    淺談Java引用和Threadlocal的那些事

    這篇文章主要介紹了Java引用和Threadlocal的那些事,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-03-03
  • java 通過發(fā)送json,post請(qǐng)求,返回json數(shù)據(jù)的方法

    java 通過發(fā)送json,post請(qǐng)求,返回json數(shù)據(jù)的方法

    下面小編就為大家分享一篇java 通過發(fā)送json,post請(qǐng)求,返回json數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • 使用Filter攔截器如何實(shí)現(xiàn)請(qǐng)求跨域轉(zhuǎn)發(fā)

    使用Filter攔截器如何實(shí)現(xiàn)請(qǐng)求跨域轉(zhuǎn)發(fā)

    這篇文章主要介紹了使用Filter攔截器如何實(shí)現(xiàn)請(qǐng)求跨域轉(zhuǎn)發(fā),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • idea中Stash與Unstash的使用及說明

    idea中Stash與Unstash的使用及說明

    這篇文章主要介紹了idea中Stash與Unstash的使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 詳解Spring 注解之@Import 注入的各種花活

    詳解Spring 注解之@Import 注入的各種花活

    這篇文章主要介紹了詳解Spring 注解之@Import 注入的各種花活,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • SpringDataJpa:JpaRepository增刪改查操作

    SpringDataJpa:JpaRepository增刪改查操作

    這篇文章主要介紹了SpringDataJpa:JpaRepository增刪改查操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • Java同步框架AbstractQueuedSynchronizer詳解

    Java同步框架AbstractQueuedSynchronizer詳解

    本篇文章主要介紹了Java同步框架AbstractQueuedSynchronizer詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-10-10
  • 淺談IDEA實(shí)用的Servlet模板

    淺談IDEA實(shí)用的Servlet模板

    今天給大家分享一下IDEA實(shí)用的Servlet模板,文中有非常詳細(xì)的圖文介紹及代碼示例,對(duì)小伙伴們很有幫助哦,需要的朋友可以參考下
    2021-05-05

最新評(píng)論