hibernate 集合(set, list, array,bag, map)
Hibernate中将集合分为四类:
(1)<set>元素:可以映射类型为java.util.Set接口的属性,它的元素存放没有顺序且不允许重复,也可以映射类型为java.util.SortSet接口的属性,它的元素可以按自然属性排序
(2)<list>元素:可以映射类型为java.util.List接口的属性,它需要在结合属性对象的数据库表中用一个额外的索引列保存每一个元素的位置,即是有属性可重复的。
(3)<bag>元素:可以映射java.util.Collection接口的属性,它的元素可能重复,但不保存属性,和set差不多,正因为有它,是因为如果通常使用list比较多,并且不想让添加一列的话,就用它。
(4)<map>元素:可以映射为java.util.Map接口的属性,它的元素以键值对的形式保存,也是无序的,也可以映射类型为java.util.SortMap接口的属性,它的元素可以按自然顺序排序。
(5)<array>元素:可以映射类型为数组的属性,但在实际运用中用的极少
Lists,maps 和 sets 用于更新效率最高(索引key),查询的时候效率都是一样的.
list,map 和
idbags 是最高效的(非反向)集合类型,set 则紧随其后。 在 Hibernate 中,set 应该时最通用的集合类型。
List:
Map: