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文件。 |