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

idea根據(jù)實(shí)體類生成數(shù)據(jù)庫表的流程步驟

 更新時(shí)間:2024年12月02日 10:50:16   作者:ueanaIU瀟瀟子  
在開發(fā)的時(shí)候,經(jīng)常會(huì)遇到數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)無法滿足業(yè)務(wù)的需求,需要去改動(dòng)數(shù)據(jù)庫表,我們就需要去設(shè)計(jì)數(shù)據(jù)庫的字段,然后又回來增加實(shí)體類里的字段,這樣很麻煩,所以本文給大家介紹了idea根據(jù)實(shí)體類生成數(shù)據(jù)庫表的流程步驟,需要的朋友可以參考下

引言

在開發(fā)的時(shí)候,經(jīng)常會(huì)遇到數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì)無法滿足業(yè)務(wù)的需求,需要去改動(dòng)數(shù)據(jù)庫表,我們就需要去設(shè)計(jì)數(shù)據(jù)庫的字段,然后又回來增加實(shí)體類里的字段,這樣是不是很麻煩?今天我們就來解決這個(gè)問題,只需要直接修改我們定義的實(shí)體類,然后在我們啟動(dòng)項(xiàng)目時(shí)數(shù)據(jù)庫就會(huì)自動(dòng)對(duì)應(yīng)我們實(shí)體類進(jìn)行修改,大大減少了麻煩。

實(shí)現(xiàn)步驟

1.導(dǎo)入依賴

<!--   jpa 依賴-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

2. yml配置文件

spring:
  jpa:
    generate-ddl: true
    hibernate:
      ddl-auto: update

jpa:hibernate:ddl-auto: update是hibernate的配置屬性,其主要作用是:自動(dòng)創(chuàng)建、更新、驗(yàn)證數(shù)據(jù)庫表結(jié)構(gòu)。該參數(shù)的幾種配置如下:

  1. create:每次加載hibernate時(shí)都會(huì)刪除上一次的生成的表,然后根據(jù)你的model類再重新來生成新表,哪怕兩次沒有任何改變也要這樣執(zhí)行,這就是導(dǎo)致數(shù)據(jù)庫表數(shù)據(jù)丟失的一個(gè)重要原因。
  2. create-drop:每次加載hibernate時(shí)根據(jù)model類生成表,但是sessionFactory一關(guān)閉,表就自動(dòng)刪除。
  3. update:最常用的屬性,第一次加載hibernate時(shí)根據(jù)model類會(huì)自動(dòng)建立起表的結(jié)構(gòu)(前提是先建立好數(shù)據(jù)庫),以后加載hibernate時(shí)根據(jù)model類自動(dòng)更新表結(jié)構(gòu),即使表結(jié)構(gòu)改變了但表中的行仍然存在不會(huì)刪除以前的行。要注意的是當(dāng)部署到服務(wù)器后,表結(jié)構(gòu)是不會(huì)被馬上建立起來的,是要等應(yīng)用第一次運(yùn)行起來后才會(huì)。
  4. validate:每次加載hibernate時(shí),驗(yàn)證創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu),只會(huì)和數(shù)據(jù)庫中的表進(jìn)行比較,不會(huì)創(chuàng)建新表,但是會(huì)插入新值。

3.編寫實(shí)體類

@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "admin")
public class Admin {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    @Column(name = "user_name",length = 20, unique = true, nullable = false)
    private String username;
    @Column(name = "password",length = 20, nullable = false)
    private String password;
}

完成了上面的步驟后,只需要啟動(dòng)項(xiàng)目,我們就完成了根據(jù)實(shí)體類生成數(shù)據(jù)庫表的操作,是不是很簡(jiǎn)單。

查看數(shù)據(jù)庫,表已經(jīng)生成,并且字段也是按照我們的要求定義的

如果我們需要新增字段,只需要在實(shí)體類中新增字段即可,比如,我在admin中增加了一個(gè)地址字段

然后重新啟動(dòng)項(xiàng)目

剛剛新定義的字段數(shù)據(jù)庫添加了,對(duì)應(yīng)的注釋也有了。大功告成!

到此這篇關(guān)于idea根據(jù)實(shí)體類生成數(shù)據(jù)庫表的流程步驟的文章就介紹到這了,更多相關(guān)idea實(shí)體類生成數(shù)據(jù)庫表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論