use*_*493 0 hibernate hibernate-mapping hibernate-onetomany
我已经阅读了许多视频和教程,解释了如何使用注释机制在hibernate中配置一对多关系.我仍然得到这个错误.
错误是:org.hibernate.AnnotationException:使用@OneToMany或@ManyToMany定位未映射的类:bean.Professor.coursesAssigned [bean.Course]使用@OneToMany或@ManyToMany定位未映射的类:bean.Professor.coursesAssigned [ bean.Course]
我的课程是:
Professor.java
package bean;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.OneToMany;
@Entity
public class Professor extends User{
@OneToMany(targetEntity = Course.class, mappedBy = "assignedProfessor",
cascade = CascadeType.ALL , fetch = FetchType.LAZY)
private Set<Course> coursesAssigned;
}
Run Code Online (Sandbox Code Playgroud)
和course.java是:
package bean;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
public class Course {
private Integer courseId;
private String courseName;
@ManyToOne(targetEntity = Professor.class)
@JoinColumn(name = "professor_join")
private Professor assignedProfessor;
}
Run Code Online (Sandbox Code Playgroud)
org.hibernate.AnnotationException:
Use of @OneToMany or @ManyToMany targeting an unmapped class: bean.Professor.coursesAssigned[bean.Course]
Use of @OneToMany or @ManyToMany targeting an unmapped class: bean.Professor.coursesAssigned[bean.Course]
Run Code Online (Sandbox Code Playgroud)
例外已经解释了原因.@OneToMany并且@ManyToMany只能在其类是映射类的属性上进行注释.如果类被注释,@Entity并且包含<mapping class>在配置文件中或以编程方式包含在Configuration实例中,则该类被视为已映射 .
所以,我相信在你@Entity上课后,例外将会消失Course.
| 归档时间: |
|
| 查看次数: |
5166 次 |
| 最近记录: |