Hibernate 中的 ORM 對映 原理

2021-09-01 10:51:02 字數 969 閱讀 9329

只要我們在配置屬性時去想,  是將 什麼  字段  配置成 什麼 型別的 屬性  就能游刃有餘了

在類的設計中,我們可以將 表的

普通字段

設計為 類的

普通屬性

,使用基本資料型別

就可以存放這些欄位的值了。

但是,對於

關係字段

,我們用什麼來存放它呢?

先來看關係字段

代表了什麼:

比如,person 與 idcard 兩張表,idcard 中有乙個字段

pid引用了 person 表的主鍵 pid。

那麼我們可以這樣理解,在 idcard 這張表中,這個小小的

pid 其實就對應了 person 表的一條記錄。

既然 這個 pid 對應的是 person 表的一條記錄,轉換為類的設計,我們可以看做這個

pid 其實就對應了乙個 person 類的物件。

這樣,這個關係就明確了,那就是 

關係字段

其實對應了關係表中的 一條 或 多條記錄。

所以,對於 關係字段,我們在設計類的時候就用 乙個物件 或 乙個集合 來存放它。

接下來就是 對映:

1.對於 普通的字段,我們用 基本資料型別 的 屬性 就可以存放這些欄位的值了。

所以就有了 屬性對映標籤:hibernate為我們提供的屬性對映標籤為

在hibernate中,如果 字段 對應的屬性 名稱 相同則可以省略 colomn 屬性。資料型別是基本資料型別亦可省略。

2.對於 關係字段 與 關係物件(集合) 的對映,於是乎就有了 關係對映標籤。

hibernate為我們提供了四個常用的關係對映標籤 : 

一對一 

一對多

多對一

多對多

// 中間表引用當前表中的字段

Spring動態載入Hibernate對映檔案

近來還在整通用的業務系統框架,採用外掛程式的方式載入需要的配置,之前已實現了spring和struts2配置的動態載入,現在剩下hibernate的對映檔案動態載入還沒實現,於是搜資料查原始碼終於實現之。1 重寫sessionfactory類 新建乙個類,繼承org.springframework....

ORM高階 Hibernate的優劣對照

hibernate 是一種是輕量級的 框架。學過 entityframework 的。會感覺挺親切的。對於各種層次程式猿對資料庫的設計 小菜程式設計師這樣做 首先考慮資料的儲存,對於功能的實現,怎樣方便怎樣來。至於說冗餘神馬的。不予考慮。資深程式設計師這樣做 首先設計資料庫的關係模型。用工具畫畫 e...

Hibernate關聯關係對映 ORM)

hibernate入門 首先要了解幾點,hibernate實體對映技術及其設計上的一些通用策略。對於orm而言,乙個非常關鍵的特性,就是實體之間關聯關係的管理。資料關聯是orm的乙個重要特徵 在一方維護關聯資訊,在另一方不做處理。如何理解?在實際應用中往往需要根據查詢到的結果獲得相關的其他持久化的資...