天天看點

單向的1:n

2.1 搭建:

1>在表中  外鍵  (沒有改變)

2>實體中 關系屬性(減掉一個關系屬性)

2.2 映射:減掉了一個關系屬性的映射,去掉了inverse="true"

<class name="User" table="user40">

<id name="id" type="java.lang.Integer">

<generator class="increment"></generator>

</id>

<property name="username" type="java.lang.String"></property>

<property name="password" type="java.lang.String"></property>

<!-- 

關系屬性:orders

1.關系屬性名

2.關系對方

3.關系中的外鍵

4.級聯

inverse="true" 告知目前方 不要維護外鍵

在單向關系中此配置不需要,或者inverse="false"

需要目前方取維護外鍵

 -->

 <set name="orders" cascade="save-update,delete" inverse="false">

<!-- 映射關系中的外鍵列 -->

<key column="user_id"></key>

<one-to-many class="Order"></one-to-many>

 </set>

</class>

<class name="Order" table="t_order40">

<property name="price" type="java.lang.Integer"></property>

2.3 使用:

在單獨插入從表時:

//擷取主表資料

User user=(User)session.get(User.class,10);

//建立從表資料

Order order1=new Order(null, 400);

//維護關系

user.getOrders().add(order1);//告知User,order1是屬于他的訂單

//插入

session.save(order1);

本文轉自12691034部落格51CTO部落格,原文連結http://blog.51cto.com/12701034/1929257如需轉載請自行聯系原作者

笑容掩飾愛