改善database schema

Hibernate 讀取你java模型類的映射元數據,並且生成schemaDDL語句。你可以將它們導出到一個text文件中,或者當你在繼承測試運行的時候直接在資料庫執行。因為大多數資料庫schema語言是有產品特性的,你需要一直保持在頭腦中的是每一個你加入到映射元數據的選項都有潛力綁定到一個特定的資料庫。

Hibernate 給你的表和約束自動創建基本的schema;它甚至會根據你選擇的主鍵生成方式來創建序列。但是也有一些hibernate不會自動創建的schema特性。這包括所有高級資料庫產品特性和其他物理存儲數據的相關特性,比如tablespace.另外,你的DBA也會經常增加一些額外的schema語句來改善你的schema.DBAs應該早期就介入並且確定hibernate自動生成的schema.絕不允許不經過檢查就將自動生成的schema部署到產品中去。

如果你的產品開發步驟允許,DBA進行的改變可以反饋到把你的JAVA系統中,增加映射元數據。在許多項目中,映射元數據可以包括所有DBA 修改的必要schema變化。然後,hibernate就可以自動生成所有產品的最終schema,包含註釋、約束、索引等等。

下一節,我們給你展示如何自設定生成的schema和如何增加自由的資料庫schema組件,我們討論自設定的數據類型,額外的一致性規則,索引,還有如何替換hibernate自動生成的schema。

導出schema基本文件到一個文件

Hibernate 綁定org.hibernate.tool.hbm2ddl,SchemaExport類到主方法main(),你可以從命令行運行。這個輔助可以直接跟你的資料庫會話,並且創建schema或者寫一個文本文件,以便於你的DBA可以進行自設定優化改善。

You May Also Like