実際、私のHibernate Annotationベースのアプリケーションには、3つのValueObjectクラス(Beanクラス)があります。
public Class CourseVO{
@Column(name="NAME")
private String name;
}
SKillsetVOクラス
public Class SkillsetVO{
@ManyToOne
@JoinColumn(name="COURSE_ID", insertable=false, updatable=false)
private CourseVO courseSID;
@ManyToMany(cascade = {CascadeType.ALL}, fetch=FetchType.EAGER)
@JoinTable(name="SKILLSET_COURSE",joinColumns={@JoinColumn(name="SKILLSET_ID",referencedColumnName="S_ID")},inverseJoinColumns={@JoinColumn(name="S_ID")})
private Set<CourseVO> course;}
TimetableVOクラス
public class TimetableVO{
@ManyToOne
@JoinColumn(name="SKILLSET_ID", insertable=false, updatable=false)
private SkillsetVO skillsetSID;
}
上記のコードに注意してください。S_IDというPrimarikeyにはAbstractVOという別のクラスが含まれているため、すべてのクラスがこのAbstractVOクラスを拡張しているため、主キーの作成に問題はありません。
select tt from TimetableVO tt join tt.skillsetSID.course c where c.name in (:courseNames)
それから私は'java'のような:courseNameを与えていますそしてそれは
そうですそれは正しいです私はValueObjectsに従って3つのテーブルを作成しているだけです...しかしhibernateはこれを行うことができます..クエリを書くのを手伝ってください... error
SKILLSET_COURSE table not exist