Hibernate 一对多关系映射与一对一关系映射

产品类别与产品构成一对多关系,在Hibernate映射中:

 

ProductCategory.hbm.xml
<set name="products" sort="unsorted" cascade="save-update,delete" inverse="true" lazy="false">
<key column="product_category_id_fk" />
<one-to-many class="com.astartech.model.Product" />
</set>

 

对应的,JavaBean中:

ProductCategory.java

 

........
private Set<Product> products = new HashSet<Product>();
........

 

 

相对应的产品与产品类别构成多对一关系,在Hibernate映射中:

Product.hbm.xml

 

<many-to-one name="productCategory" class="com.astartech.model.ProductCategory" outer-join="true" lazy="false">
<column name="product_category_id_fk" not-null="true"/>
</many-to-one>

 

对应的,JavaBean中:

Product.java

 

.......
private ProductCategory productCategory;
.......

 

 

在产品与产品详细信息构成一对一关系,在Hibernate映射中

Product.hbm.xml

 

<one-to-one name="productDetail" class="com.astartech.model.ProductDetail"
outer
-join="true" cascade="all" lazy="false" />

对应的,JavaBean中

 

Product.java

 

.......
private ProductDetail productDetail;
.......

 

 

在产品详细信息与产品构成一对一关系,在Hibernate映射中

ProductDetail.hbm.xml

 

<one-to-one class="com.astartech.model.Product" name="product" constrained="true" lazy="false"/>

 

对应的,JavaBean中

ProductDetail.java

 

......
private Product product;
......

 

 

posted @ 2010-05-08 13:29  Aqian  阅读(274)  评论(0编辑  收藏  举报