最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot中使用jpa下hibernate的ddl-auto方式

 更新時間:2022年02月25日 09:41:59   作者:小丫頭姍珊  
這篇文章主要介紹了springboot中使用jpa下hibernate的ddl-auto方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

使用jpa下hibernate的ddl-auto

今天做一個報表的功能,發(fā)現(xiàn)一個表中的shopProductId都為null,但在程序中判斷用的是shopProductId,而且表中有productId不為null,在查找原因的途中,才得知是有人將productId改為了shopProductId,但是數(shù)據(jù)沒有更新過去。

遇到這種情況,我們怎么能查看到某些字段被改變了呢?

由于我們用的框架是springBoot+jap-hibernate,然后在jpa下的hibernate,在application配置文件中,有

ddl-auto的配置

  • ddl-auto:create每次運(yùn)行該程序,沒有表格會新建表格,表內(nèi)有數(shù)據(jù)會清空
  • ddl-auto:create-drop每次程序結(jié)束的時候會清空表
  • ddl-auto:update每次運(yùn)行程序,沒有表格會新建表格,表內(nèi)有數(shù)據(jù)不會清空,只會更新
  • ddl-auto:validate運(yùn)行程序會校驗(yàn)數(shù)據(jù)與數(shù)據(jù)庫的字段類型是否相同,不同會報錯

把ddl-auto改為validate時,我們啟動項(xiàng)目時,會提示哪一個字段被更改,這樣我們在發(fā)布上線時,會及時發(fā)現(xiàn),不至于出現(xiàn)錯誤。而正常運(yùn)行的時候,一般設(shè)置為update屬性。 

spring.jpa.hibernate.ddl-auto的配置

spring.jpa.hibernate.ddl-auto 可以顯式設(shè)置 spring.jpa.hibernate.ddl-auto ,

標(biāo)準(zhǔn)的Hibernate屬性值有 none,validate,update,create,create-drop。

Spring Boot 會根據(jù)數(shù)據(jù)庫是否是內(nèi)嵌類型,選擇一個默認(rèn)值。

具體的關(guān)系見下

內(nèi)嵌類型數(shù)據(jù)庫名稱默認(rèn)值
內(nèi)嵌hsqldb, h2, derbycreate-drop
非內(nèi)嵌其他數(shù)據(jù)庫none

spring.jpa.hibernate.ddl-auto的四個屬性的含義見下表:

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

此外,啟動時處于classpath根目錄下的 import.sql文件會被執(zhí)行(前提是ddl-auto屬性被設(shè)置為 create 或create-drop)。這在demos或測試時很有用,但在生產(chǎn)環(huán)境中可能不期望這樣。

這是Hibernate的特性,和Spring沒有一點(diǎn)關(guān)系。

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

相關(guān)文章

  • Java Collections.sort()排序代碼案例

    Java Collections.sort()排序代碼案例

    這篇文章主要介紹了Java Collections.sort()排序代碼案例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Java位集合之BitMap、BitSet和布隆過濾器示例解析

    Java位集合之BitMap、BitSet和布隆過濾器示例解析

    這篇文章主要介紹了Java中位集合的基本概念、實(shí)現(xiàn)方法以及應(yīng)用場景,包括Bit-Map、BitSet和BloomFilter,Bit-Map通過位操作高效地存儲和查詢元素狀態(tài),文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • java基于servlet實(shí)現(xiàn)文件上傳功能解析

    java基于servlet實(shí)現(xiàn)文件上傳功能解析

    這篇文章主要為大家詳細(xì)介紹了java基于servlet實(shí)現(xiàn)上傳功能,后臺使用java實(shí)現(xiàn),前端主要是js的ajax實(shí)現(xiàn),感興趣的小伙伴們可以參考一下
    2016-05-05
  • java線程的基礎(chǔ)實(shí)例解析

    java線程的基礎(chǔ)實(shí)例解析

    這篇文章主要介紹了java線程的基礎(chǔ)實(shí)例解析,具有一定借鑒價值,需要的朋友可以參考下
    2017-12-12
  • 淺析Java數(shù)據(jù)庫操作工具包jOOQ的使用

    淺析Java數(shù)據(jù)庫操作工具包jOOQ的使用

    jOOQ?是一個輕量級的?Java?ORM(對象關(guān)系映射)框架,可用來構(gòu)建復(fù)雜的?SQL?查詢,這篇文章主要來和大家介紹一下jOOQ的使用,需要的可以參考下
    2024-04-04
  • 關(guān)于IDEA的junit單元測試Scanner輸入不可用的問題(多種原因分析)

    關(guān)于IDEA的junit單元測試Scanner輸入不可用的問題(多種原因分析)

    IDEA在Junit測試中使用了Scanner,但是控制臺一直轉(zhuǎn)圈,無法輸入,eclipse默認(rèn)可用,其實(shí)解決方法很多,今天小編給大家分享多種問題原因分析及解決方法,感興趣的朋友一起看看吧
    2021-06-06
  • 詳解Java中List的正確的刪除方法

    詳解Java中List的正確的刪除方法

    這篇文章主要為大家詳細(xì)介紹了Java中List的正確的刪除方法,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)有一定幫助,需要的可以參考一下
    2022-05-05
  • Java 前臺加后臺精品圖書管理系統(tǒng)的實(shí)現(xiàn)

    Java 前臺加后臺精品圖書管理系統(tǒng)的實(shí)現(xiàn)

    相信每一個學(xué)生學(xué)編程的時候,應(yīng)該都會寫一個小項(xiàng)目——圖書管理系統(tǒng)。為什么這么說呢?我認(rèn)為一個學(xué)校的氛圍很大一部分可以從圖書館的氛圍看出來,而圖書管理系統(tǒng)這個不大不小的項(xiàng)目,接觸的多,也比較熟悉,不會有陌生感,能夠練手,又有些難度,所以我的小項(xiàng)目也來了
    2021-11-11
  • Java中的15種鎖

    Java中的15種鎖

    在讀很多并發(fā)文章中,會提及各種各樣鎖如公平鎖,樂觀鎖等等,這篇文章小編將向大家介紹是各種鎖的分類,感興趣的小伙伴可以參考下面文章的具體內(nèi)容
    2021-09-09
  • 如何利用Spring把元素解析成BeanDefinition對象

    如何利用Spring把元素解析成BeanDefinition對象

    這篇文章主要介紹了如何利用Spring把元素解析成BeanDefinition對象,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08

最新評論

沅江市| 南川市| 怀远县| 万荣县| 榆树市| 五台县| 陇南市| 鄂托克前旗| 禹州市| 东山县| 杭锦旗| 同德县| 荆州市| 普陀区| 正宁县| 福海县| 蕉岭县| 肇源县| 元阳县| 文成县| 那曲县| 都匀市| 左权县| 茶陵县| 阿坝| 凤山市| 阿克陶县| 汉寿县| 浪卡子县| 天台县| 新津县| 高平市| 黎川县| 凭祥市| 延边| 淮安市| 双峰县| 腾冲县| 中西区| 和平区| 卓资县|