hibernate关联查询介绍
hibernate关联查询介绍
在多对多关系.假如有这样一个例子:
一个网上商店,一个用户浏览了一件商品,留下一句话,走了,第二个用户有来了,又留一句话,然后这两个用户又到别的商品逛了逛,也留下了他对商品的看法.这个过程我们在数据库中实现就是多对多,一个商品对多个用户,一个用户对多个商品.
但是我们需要查询出一个商品下,有谁说了哪些话,可能要做一个统计.在Hibernate里,
<many-to-one name="productTable" class="com.shop.product.DAO.ProductTable" fetch="join">
<column name="product_Id" not-null="true" />
</many-to-one>
设置了join以后,我们只对商品的那个持久类做查询就可以得到关联结果.
但是在进行显示的时候,我们得对存储留言那个持久类进行初始化.否则会报错.
也可以用一个动态bean存储这两个持久类中的数据.用这个动态bean来做显示.相当于一个DAO.
定义和访问一个动态bean的步骤如下:
定义一个动态属性Dynaproperty数组,动态属性Dynaproperty定义了一个属性的名字和对象类型;
用定义好的动态属性数组实例化一个动态类;
由动态类返回一个动态bean;