现在的位置: 首页 > 综合 > 正文

hibernate映射总结详解: 映射一对多双向关联关系

2014年02月17日 ⁄ 综合 ⁄ 共 801字 ⁄ 字号 评论关闭
 (hibernate映射总结详解,第一篇文章有映射关系树的描述,这里不再重复)

Ⅱ. 映射实体关联关系 --- 一对多关联关系 --- 一对多双向关联映射:
当类与类之间建立了关联,就可以方便地从一个类对象导航到另一个与它关联的类对象。例如order对象,如果想获得与它关联的customer对象,只要调用
Coustomer customer = order.getCustomer(); 就可以OK了。要实现这样的操作要求必须建立从customer到order的一对多双向关联。这是,在customer中orders必须以集合的形式出现,在Customer的持久化类中,我们这样写:
private set orders = new HashSet();
public set getOrders(){
    return orders;
}
public void setOrders(Set orders){
    this.orders = orders;
}
在customer的映射文件中我们这样映射:
<set name=“orders”>
<key column=“customer_id”/>
<one-to-many class=“mypack.Order”/>
</set>
<set>元素包括以下属性:
name: 设定正在映射的持久化类的属性名,这里为orders
<set>元素还包含<key>元素和<one-to-many>元素。
<one-to-many>:元素定义此属性对应的持久化类。
<key>:元素定义了此属性与所关联的持久化类mypack.order对应的表的外键。
注意:没有column属性。<one-to-many>表明,在orders中存放一组order对象。在customer表中没有order字段。
总结:实体一对多双向关联(与多对一双向关联同意),在<one>方用<set>映射。<one>中有<key>和<one-to-many>。

 

抱歉!评论已关闭.