<!-- 对应java集合对象的List,list需要index列进行排序(List是有序的),
bag是hibernate对应java list的标签,不进行排序操作 -->
<bag name="tagName">
<key column=""></key>
<one-to-many/>
</bag>
<list name="tagName">
<key column=""></key>
<list-index></list-index>
<one-to-many/>
</list>
<!-- 对应Java集合的Set对象,无序不重复的 -->
<set name="tagName">
<key column=""></key>
<one-to-many/>
</set>
<!-- 对应Java集合的Map对象,有一个map-key标签 -->
<map name="tagName">
<key column=""></key>
<map-key type="string" column=""></map-key>
<one-to-many/>
</map>
集合选择:推荐使用Set;如果使用List时使用bag来映射,不需要排序;
java代码定义集合必须定义为接口,比如Set,List等,而不能定义为实现类,比如HashSet,ArrayList等;
cascade="update-save" 级联操作,主要配置有:all,none,sava-update,delete,lock,refresh,evict,replicate,persite,merge,delete-orphan(one-to-many)等等,
设置级联操作是要考虑清楚是否有必要,和是否符合业务逻辑关系;缺省是none
inverse 标示是否放弃维护关联关系,true标示不维护关联关系,默认是false,在有序集合中是不能使用的,比如List,Array等;