weixin_40362784 2020-04-15 10:18 采纳率: 25%
浏览 314

Hibernate使用其他实体类的多个字段作为联合主键,该怎么配置?

1.有实体类Student

public class Student {
    //id为主键
    private String id;
    private String passwd;
    private String name;
    private String sex;
    private String school;
    private String major;
    private String stuClass;

    //省略了无参构造,getter/setter等方法

2.有实体类Subject

public class Subject {
    //id为主键
    private Integer id;
    private Exam exam;
    private String question;
    private String answer;
    private int score;

    //省略了无参构造,getter/setter等方法

3.有实体类AnswerSubject

public class AnswerExam {
    //使用Sstudent的id和Subject的id作为联合主键
    private Student student;
    private Subject subject;
    private String stuAnswer;

    ///省略了无参构造,getter/setter等方法

4.请问,在AnswerSubject.hbm.xml该怎么配置联合主键?已知知识如下:

    <!-- 配置联合主键 -->
    <composite-id name="id">
        <key-property name="student"
            type="com.abc.entities.Student">
            <column name="STUDENT" not-null="true">
            </column>
        </key-property>
        <key-property name="subject"
            type="com.abc.entities.Subject">
            <column name="SUBJECT" not-null="true">
            </column>
        </key-property>
    </composite-id>

    <property name="stuAnswer" type="java.lang.String">
        <column name="STUANSWER" />
    </property>

</class>

  • 写回答

0条回答 默认 最新

      报告相同问题?

      悬赏问题

      • ¥15 easyclick重启app
      • ¥15 ros系统里Python版本问题
      • ¥15 不兼容驱动程序删不了,内核隔离打不开
      • ¥15 Centos7重启网卡自动down,只能手动up
      • ¥15 multisim用74ls148做一个5号病号呼叫系统
      • ¥15 单片机,传感器,LCD1602
      • ¥15 关于adams 批处理仿真时间太长的问题
      • ¥15 fate部署问题请求帮助
      • ¥15 关于#arcpy#的问题:arcpy栅格计算器批处理(语言-python)
      • ¥15 stata logit的备选项自变量不同