当前位置: 代码迷 >> J2EE >> Hibernate 一对多关系映射跟HQL语句
  详细解决方案

Hibernate 一对多关系映射跟HQL语句

热度:99   发布时间:2016-04-19 22:00:53.0
Hibernate 一对多关系映射和HQL语句
我把问题简化了,简单说明一下。
现在有两张表,teacher表和student表,student表中有一个外键tcid,对应teacher表的主键id,
假设一个老师可以带多个学生,一个学生只能有一个老师,学生到老师是多对一的关系。
然后我写了两个持久化类,并且按照Hibernate的进行多对一单向的映射,举个例子大致如下:
class Teacher{
    private int tcid;
    private String name;
    //省略get和set
}
class Student{
    private int stuid;
    private Teacher teacher;
    //省略get和set
}
我现在想要用HQL语句查询所有由tcid=1的老师所教的学生,我以为可以用如下语句查询:
Query query=session.createQuery("from Student where Student.teacher.tcid=1");
结果是无法查询,请教懂这个的高人指点下,问题在哪里,如何解决,十分感谢!!
------解决方案--------------------
把WHERE语句后面的 STUDENT去掉
  相关解决方案