java - 基于 Hibernate 注解的查询执行错误?

标签 java hibernate jpa annotations hql

实际上,在我的基于 Hibernate Annotation 的应用程序中,有 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;}

VO类(class)时间表

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)

然后我给出 :courseName like 'java' 然后它给出错误 SKILLSET_COURSE 表不存在 是的,这是正确的,我只根据 ValueObjects 创建三个表...但是 hibernate 可以做到这一点..请帮我编写查询...

最佳答案

使用hbm2ddl属性来创建更新。或者手动打开控制台并发出 CREATE 语句。

关于java - 基于 Hibernate 注解的查询执行错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13512494/

相关文章:

java - 使用我的多边形填充算法填充多边形会出现越界错误

mysql - 我如何告诉 Hibernate 通过外键指向的实体删除表行?

java - Lucene 查询 @indexedEmbedded 对象 id

java - Spring Data JPA 存储库 : IN-clause in derived query not working

java - iTextPDF:动态更改表格对齐方式

java - Swing invokelater 卡住

java - Hibernate事务查询

hibernate - 使用 JPA 和 PostgreSQL 9.0 分组

java - JPA 多对多查询

java - 如何使用Selenium java在浏览器中的两个窗口之间切换