我有三个许多表的甲骨文(10G)数据库,如下所示。 我使用休眠工具3.2.1.GA使用Spring 3.0.2版。
- 产品 -父表
- 颜色 -父表
- ProductColour -连接表-引用
colourId
和prodId
的Colour
和Product
表分别
凡ProductColour
之间连接表 Product
和Colour
。 如表名称所暗示的,之间是有很多一对多的关系, Product
和ProductColour
。 我认为,在数据库中的关系,可以很容易地想象中的很清楚,只有这么多的信息。 因此,我不打算去探索在长度这种关系。
在一个实体(行) Product
与任何数量的实体相关联的Colour
在和一个实体(行) Colour
也可以与任意数量的实体相关联的Product
。
比方说,作为一个例子,我需要计算在可用的行数Product
表(关于休眠),这是可以做到像下面这样。
Object rowCount = session.createCriteria(Product.class)
.setProjection(Projections.rowCount()).uniqueResult();
如果我需要在计算可用的行数ProductColour
表? 因为,它是一个多一对多的关系,它被映射在Product
和Colour
实体类(POJO)中与有相应的java.util.Set
并没有直接的POJO类的ProductColour
表可用。 因此上述行计数说法似乎并不在这种情况下工作。
有没有算在Hibernate中这样的加盟实体的行数以精确的方式?