JPA默認值設置沒有效果的解決
問題:默認值設置沒有效果
springboot項目的JPA數(shù)據(jù)庫表的類添加默認值,有2種方法
1、@Column(columnDefinition = "varchar(35) default ‘12345‘ ")
2、@ColumnDefault(“12345”)
要求:設置img字段默認值為/imgs/defunct.png
依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.20</version>
</dependency>
映射類
@Data
@NoArgsConstructor
@AllArgsConstructor
@DynamicInsert
@DynamicUpdate
@Entity(name = "tbl_user")
public class UserInfo {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@ColumnDefault("\\imgs\\defunct.png")
private String img;
@ColumnDefault("0")
private Integer studyBegin;
}
數(shù)據(jù)庫設計表字段

只有studyBegin默認值設置為0,img的默認值設置不成功。
解決辦法
把
@ColumnDefault("/imgs/defunct.png")
改為
@Column(columnDefinition = “varchar(255) default ‘/imgs/defunct.png'”)
效果

JPA為字段設置默認值
在使用JPA時,如果需要為屬性設置默認值,很自然的,你可能會想到用下面的方式。
@Column(name="state",columnDefinition="tinyint default 0") private Integer state=0;
但很不幸的是,這種方案有時候并不可行,原因在于columnDefinition是在創(chuàng)建表的時候使用的,如果你的表不是自動生成的。
那我們又需要為屬性添加默認值,該怎么辦呢,其實很簡單,就直接為屬性賦值就可以了。
private Integer state=0;
有時候,看起來很復雜的問題,其實換個角度思考,其實就會變得很簡單。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Spring?Cloud?Sleuth?和?Zipkin?進行分布式跟蹤使用小結
分布式跟蹤是一種機制,我們可以使用它跟蹤整個分布式系統(tǒng)中的特定請求,分布式跟蹤允許您跟蹤分布式系統(tǒng)中的請求,本文給大家介紹Spring?Cloud?Sleuth?和?Zipkin?進行分布式跟蹤使用小結,感興趣的朋友一起看看吧2022-03-03
SpringBoot的DeferredResult案例:DeferredResult的超時處理方式
這篇文章主要介紹了SpringBoot的DeferredResult案例:DeferredResult的超時處理方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
一篇文章教你使用SpringBoot如何實現(xiàn)定時任務
這篇文章主要給大家介紹了關于如何利用一篇文章教你使用SpringBoot實現(xiàn)定時任務的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10
使用IDEA搭建一個簡單的SpringBoot項目超詳細過程
這篇文章主要介紹了使用IDEA搭建一個簡單的SpringBoot項目超詳細過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
Java后臺基于POST獲取JSON格式數(shù)據(jù)
這篇文章主要介紹了Java后臺基于POST獲取JSON格式數(shù)據(jù),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-03-03

