springBoot生成SQL文件-總結
- 2020 年 1 月 22 日
- 筆記
本篇對之前的做個小結,整體的對比下幾種方案使用時的優缺點,至於使用哪種方案,只能看實際情況了。
目錄
- springBoot+jpa根據實體類註解生成SQL文件
- springBoot生成SQL文件-使用Hibernate5的SchemaExport實現01
- springBoot生成SQL文件-使用Hibernate5的SchemaExport實現02
- springBoot生成SQL文件-Hibernate5的SchemaUpdate實現
- springBoot生成SQL文件-基於Liquibase實現
- springBoot生成SQL文件-總結
|
序號 |
方案 |
優點 |
缺點 |
|---|---|---|---|
|
1 |
jpa屬性 |
最簡單的方式 |
1.生成的全量腳本無分隔符「;」。 2.未找到實現增量的方式。 |
|
2 |
Hibernatet通過mian函數全量/增量 |
無需構建項目 |
1.需要手動配置資料庫方言屬性。 2.手動配置掃描路徑的範圍,配置不好容易缺失。 3.增量腳本中僅有新增語句,無drop相關的修改語句。 |
|
3 |
Hibernatet通過構建項目實現全量/增量 |
無需單獨設置資料庫方言等屬性,即序號2中的前兩項缺點均不存在 |
1.需要構建項目,若項目過大,啟動時比較耗時間。2.增量腳本中僅有新增語句,無drop相關的修改語句。 |
|
4 |
Liquibase兩資料庫對比 |
通過gradle的task命令即可生成需要的增量腳本,Liquibase本身可單獨做資料庫版本管理工具 |
1.需要配置兩個資料庫。2.全量腳本需要手動創建與維護ChangeLog文件。 |
|
5 |
Liquibase資料庫與jap註解entity對比(可看做資料庫與全量腳本文件對比) |
同序號4 |
1.目前僅適用於單模組項目。2.生成全量腳本需要手動創建與維護ChangeLog文件。 |