Java Hibernate映射-“;无法确定类型";
我当前已成功持久化以下对象:Java Hibernate映射-“;无法确定类型";,java,hibernate,hibernate-annotations,Java,Hibernate,Hibernate Annotations,我当前已成功持久化以下对象: 人名字等 考试题目、日期等 我现在要创建第三个表考试结果。对于这个表,我认为应该是个人ID、考试ID和结果,这是一个多对多关系 @Entity public class ExamResult { private Exam exam; private Person person; private double value; @Id @ManyToOne( cascade = {CascadeType.PERSIST, Ca
- 人名字等
- 考试题目、日期等
@Entity
public class ExamResult {
private Exam exam;
private Person person;
private double value;
@Id
@ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )
@JoinColumn(name="EXAM_ID")
public Exam getExam() {
return exam;
}
public void setExam(Exam exam) {
this.exam = exam;
}
@Id
@ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} )
@JoinColumn(name="PERSON_ID")
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
public double getValue() {
return value;
}
public void setValue(double value) {
this.value = value;
}
}
错误:
org.hibernate.MappingException:无法确定列:[org.hibernate.mapping.Column(Person)]的表:ExamResult中的:Person的类型
我想我可能走错了方向,但我不知道如何从根本上处理这段关系
有什么想法吗?在同一个实体中不能有多个
@Id
注释。改为使用复合ID。
也不知道会出什么问题。。。你能展示一下
Person
类吗?关于这个@envantate有一个公开的问题,Person
类是一个POJO,没有以任何方式提到ExamResult
。谢谢,这个例子看起来确实像我想要实现的。我正在经历它。