web進修之 Hibernate 型別(4)

2021-08-15 21:18:44 字數 1054 閱讀 3933

本片包含hibernate的兩種型別的簡單介紹和集合型別的對映。

hibernate中的兩種型別:

自己掌控自己的生命週期,比如person有addrss屬性(關聯到另外一張表)、age(int)、name(組合屬性,也是乙個類,但是資料庫中沒有對應的表,包含first name,last name),刪除person以後,但是address依然存在,但是age和nam隨著person的刪除也就會被**,也就是說age和name的生命週期由person主導,person生,他們生,person亡,他們亡。

由別的entity(value)掌控自己的生命週期,如果是引用型別,在不被引用後就會被**。

當然hibernate可以支援自定義value值型別,使用步驟如下:

configuration cfg = new configuration();

cfg.registertypeoverride( new moneytype() );

宣告最好使用set,因為set不允許有重複的元素。需要注意的是:

hibernate對集合進行持久化的時候使用的是自己型別(就算我們定義的集合為hashset,在持久化之後,再get也不能強轉為hashset)

cat cat = new domesticcat();

cat kitten = new domesticcat();

....

set kittens = new hashset();

kittens.add(kitten);

cat.setkittens(kittens);

session.persist(cat);

kittens = cat.getkittens(); // okay, kittens collection is a set

(hashset) cat.getkittens(); // error!

Hibernate之mappedBy屬性詳解

下面是乙個例子 人跟身份證雙向關聯 在person裡面定義的註解 在person裡面定義的注釋 onetoone cascade cascadetye.all,optional true public idcard getidcard 在idcard裡面定義的注釋 public person get...

Hibernate之批量查詢

hql查詢 string hql from student id是student 類中的屬性,不是資料庫的字段 query query seesion.createquery hql list list query.list 設定引數 string hql from student where id...

hibernate系列之四

資料庫中表之間的關係 一對一 一對多 多對多 一對多的建表原則 在多的一方建立外來鍵指向一的一方的主鍵 多對多的建表原則 建立乙個中間表,中間表中至少有兩個字段作為外來鍵分別指向多對多雙方的主鍵 一對一建表原則 唯一外來鍵對應 假設一對一中的任意一方為多,在多的一方建立外來鍵指向一的一方的主鍵,將外...