hibernate吧 关注:2,522贴子:3,004
  • 1回复贴,共1

Hibernate 联合主键, 两个主键同时都是外键.映射文件如何写.

只看楼主收藏回复

create table SC(S# varchar(10),C# varchar(10),score decimal(18,1)) 分数表
create table Student(S# varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10)) 学生表
create table Course(C# varchar(10),Cname nvarchar(10),T# varchar(10)) 课程表
分数表中使用了联合主键,分别引用学生表的主键和课程表的主键.映射文件该如何编写?
各位大神提提意见.


1楼2014-05-12 18:21回复
    <class name="com.newer.pojo.Score" table="SC">
    <!-- 这个是联合主键. -->
    <composite-id>
    <key-property name="student" column="sId" length="2"
    type="java.lang.String" />
    <key-property name="course" column="cId" length="2"
    type="java.lang.String"/>
    </composite-id>
    <property name="score" length="5" />
    <one-to-one name="course" class="com.newer.pojo.Course"
    cascade="save-update" property-ref="cId" />
    <one-to-one name="student" class="com.newer.pojo.Student"
    cascade="save-update" property-ref="sId" />
    </class>
    SC 表对应的Score持久化类的配置文件.


    2楼2014-05-12 18:23
    回复