hibernate中的一对多,多对一,多对多关系配置

日常工作中,对于表表之间的关系需要通过分析得出,而分析完成之后则需要在实体和

表之间添加hibernate的配置文件

模板如下

多对一:

<many-to-one name=“” class=“” column=“”/> 

一对多:(Set)

<set name="">

        <key column=""></key>

        <one-to-many class=""/>

</set> 

多对多:(Set)

<set name="" table="">

        <key column=""></key>

        <many-to-many class="" column=""/>

</set> 

举例:

现在有多个实体,它的全类名分别是:

cn.it.oa.User(id,loginName,password,roles)

与roles是多对多

cn.it.oa.Role(id,name,parent(Role),children(Role),users)

与parentId是多对一,与childrenId是一对多,与users是多对多

多对一:

<many-to-one name="parent" class="cn.it.oa.Role" column="parentId"/> 

一对多:

<set name="children">

        <key column="parentId"></key>

        <one-to-many class="cn.it.oa.Role"/>

</set> 

多对多:

user--->roles

<set name="roles" table="oa_user_role">

        <key column="user"></key>

        <many-to-many class="cn.it.oa.Role" column="roleId"/>

</set> 

role-->users

<set name="users" table="oa_user_role">

        <key column="roleId"></key>

        <many-to-many class="User" column="userId"/>

</set> 

猜你喜欢

转载自fenghaodouluo.iteye.com/blog/2274935
今日推荐