本文介绍了基于Hibernate的注解查询执行的错误?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

其实在我的基于Hibernate的注解应用有三项方的ValueObject类(Bean类),这些都是..

Actually in my Hibernate Annotation based Application have theree ValueObject classes(Bean class) these are..

public Class CourseVO{
       @Column(name="NAME")
    private String name;
    }

SKillsetVO类

SKillsetVO class

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类

TimetableVO class

public class TimetableVO{
@ManyToOne
    @JoinColumn(name="SKILLSET_ID", insertable=false, updatable=false)
    private SkillsetVO skillsetSID;
}

注意上面的$ C称为S_ID $ C Primarikey 有包含一个名为AbstractVO所以我的所有的类都是另一个类继承了这个AbstractVO类的主键cration所以没有问题... ...
现在,在我的业务逻辑,我写了查询:

Note above code Primarikey called S_ID have contain another class called AbstractVO so my all classes are extends this AbstractVO class so no problem on Primary Key cration...Now in my Business logic i wrote a query :

select tt from TimetableVO tt join tt.skillsetSID.course c where c.name in (:courseNames)

然后我给:课程名,如Java的',那么它给 错误 SKILLSET_COURSE表不存在
是的,它是正确的,我只根据ValueObjects创建三个表...但是Hibernate可以做到这一点..Please帮我写查询...

then i'm giving :courseName like 'java' then it is giving error SKILLSET_COURSE table not existyes it is correct i'm only creating Three table according to ValueObjects...but hibernate can do this ..Please help me to write query...

推荐答案

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

Use hbm2ddl property to create or update. Or manually open the console and issue CREATE statement.

这篇关于基于Hibernate的注解查询执行的错误?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-15 16:53