<set
name="propertyName" (1)
table="table_name" (2)
schema="schema_name" (3)
lazy="true|false" (4)
inverse="true|false" (5)
cascade="all|none|save-update|delete|all-delete-orphan" (6)
sort="unsorted|natural|comparatorClass" (7)
order-by="column_name asc|desc" (8)
where="arbitrary sql where condition" (9)
outer-join="true|false|auto" (10)
batch-size="N" (11)
access="field|property|ClassName" (12)
>
<key .... />
<index .... />
<element .... />
</set>
(1) name 集合屬性的名稱
(2) table (可選——默認為屬性的名稱)這個集合表的名稱(不能在一對多的關聯關系中使用)
(3) schema (可選) 表的schema的名稱, 他將覆蓋在根元素中定義的schema
(4) lazy (可選——默認為false) lazy(可選--默認為false) 允許延遲加載(lazy initialization )(不能在數組中使用)
(5) inverse (可選——默認為false) 標記這個集合作為雙向關聯關系中的方向一端。
(6) cascade (可選——默認為none) 讓操作級聯到子實體
(7) sort(可選)指定集合的排序順序, 其可以為自然的(natural)或者給定一個用來比較的類。
(8) order-by (可選, 僅用于jdk1.4) 指定表的字段(一個或幾個)再加上asc或者desc(可選), 定義Map,Set和Bag的迭代順序
(9) where (可選) 指定任意的SQL where條件, 該條件將在重新載入或者刪除這個集合時使用(當集合中的數據僅僅是所有可用數據的一個子集時這個條件非常有用)
(10) outer-join(可選)指定這個集合,只要可能,應該通過外連接(outer join)取得。在每一個SQL語句中, 只能有一個集合可以被通過外連接抓取(譯者注: 這里提到的SQL語句是取得集合所屬類的數據的Select語句)
(11) batch-size (可選, 默認為1) 指定通過延遲加載取得集合實例的批處理塊大小("batch size")。
(12) access(可選-默認為屬性property):Hibernate取得屬性值時使用的策略
posted on 2007-05-11 16:31
阿蜜果 閱讀(1200)
評論(0) 編輯 收藏 所屬分類:
Hibernate