如何从具有多对多关系的Hibernate中检索记录?

时间:2012-07-25 09:05:14

标签: hibernate

我有三张桌子

Users                           Deal                Dealusers
==========                     ======               ==========
userid(PK)                     dealid(PK)           dealid(PK+FK)
                                                    userid(PK+FK)

现在我在eclipse中使用hibernate工具生成映射 所以我得到了POJO课程和用户&的hbm文件交易表只是因为这种多对多的关系。

现在我想查询“获取购买dealid的用户列表= 1”

那我该如何使用hibernate查询呢? 提前谢谢。

<set name="userses" table="dealusers" inverse="false" lazy="true" fetch="select">
            <key>
                <column name="dealid" not-null="true" />
            </key>
            <many-to-many entity-name="com.test.model.Users">
                <column name="userid" not-null="true" />
            </many-to-many>
        </set>

1 个答案:

答案 0 :(得分:0)

Deal deal = session.get(Deal.class, 1);
return deal.getUsers();

就这么简单。