首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Hibernate O/R 映射三大核心定則

     編輯:Java 相關知識

定則一:配置文件名稱與位置可自定義

官方文檔常用 hibernate.properties 或 hibernate.cfg.xml 放在 classpath 根目錄,實際上名稱、位置均可自定,多資料庫環境下可擁有多個配置文件。創建 SessionFactory 時指定:

protected static String CONFIG_FILE = "my_hibernate.config";
String configPath = System.getProperty("my.config");
sessionFactory = new Configuration()
  .configure(new File(configPath + File.separator + CONFIG_FILE))
  .buildSessionFactory();

定則二:小型專案可合併 .hbm.xml 映射文件

官方建議一表一映射文件,但在小型專案、維護人員少時,可合併為一或幾個文件。建議按邏輯模組劃分,每人維護一個。

<!-- 大型專案分散映射 -->
<mapping resource="com/hongsoft/test/persistence/Cat.hbm.xml"/>
<mapping resource="com/hongsoft/test/persistence/Animal.hbm.xml"/>

<!-- 小型專案集中映射 -->
<mapping resource="res_hibernate_map.xml"/>

注意:映射文件路徑只能用相對路徑,以 classes 根目錄為基準。

定則三:映射以 .hbm.xml 為準,而非 PO 類

啟動檢查時,系統依據映射文件驗證 PO 類:

  • 映射文件中定義的屬性,PO 類必須有對應屬性及標準 getter/setter(如 name 對應 getName()/setName())
  • PO 類可擁有映射文件未定義的額外屬性/方法,不會報錯

利用此特性可在 PO 中加入表單驗證屬性(如 updatedPasswd),構造 FormBean 或 ValueObject,但需權衡耦合度。

總結

三大定則揭示 Hibernate 映射配置的靈活性與檢查機制,助力開發者避開常見誤區,根據專案規模選擇適當映射組織策略。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved