0
在路口表條目我有三個表:獲取基於關鍵
offers; offer_groups; offer_group_members.
的offers
和offer_groups
表映射與Hibernate(見下文)。
在offer_group_members
中,我存儲了優惠屬於哪個組(提供主鍵,優惠組主鍵)。
我有點新的休眠,所以我的問題是:我如何根據Offer鍵從OFFER_GROUP_MEMBERS
表中得到所有OfferGroups
?
我想是這樣的:
Criteria crit;
crit = getSession().createCriteria(Offer.class);
crit = crit.createCriteria("offerGroups");
crit.add(eq("key", offerKey));
這裏是映射:
的報價:
<composite-id name="comp_id"
class="com.infonova.psm.hibernate.prodsrv.OfferPK">
<key-property name="key" column="KEY"
type="java.lang.String" length="128">
</key-property>
</composite-id>
爲offer_group_key:
<id name="key" type="java.lang.String" column="KEY" length="128">
<generator class="assigned"/>
</id>`
爲offer_group_key:
<set name="offers" table="OFFER_GROUP_MEMBERS" lazy="true" inverse="false"
cascade="none">
<key>
<column name="OFFER_GROUP_KEY"/>
</key>
<many-to-many class="Offer">
<column name="OFFER_KEY"/>
</many-to-many>
</set>
的報價:
<set name="offerGroups" table="OFFER_GROUP_MEMBERS"
inverse="true" lazy="true" cascade="none">
<key>
<column name="OFFER_KEY" />
</key>
<many-to-many
class="OfferGroup">
<column name="OFFER_GROUP_KEY" />
</many-to-many>
</set>