【问题标题】:Hibernate Collection chainingHibernate 集合链接
【发布时间】:2010-03-31 06:22:34
【问题描述】:

我有两个实体

University   
   courses

Course
   students

我想访问一所大学的所有学生。我尝试了以下查询

select u.courses.students from university u

我遇到了以下异常。

org.hibernate.QueryException: illegal attempt to dereference collection [university0_.id.courses] with element property reference [students] [ select u.courses.students from com.socialsite.persistence.University u  ]
    at org.hibernate.hql.ast.tree.DotNode$1.buildIllegalCollectionDereferenceException(DotNode.java:46)
  .....

谁能解释这有什么问题?

【问题讨论】:

    标签: java hibernate orm collections hql


    【解决方案1】:

    嗯,u.courses 是一个集合,没有 students 属性(这是单个 Course 的属性)。

    【讨论】:

      【解决方案2】:

      我想通了。谢谢帕斯卡

         select distinct s
         from University u
           inner join u.courses as c
             inner join c.students as s
      

      【讨论】:

        猜你喜欢
        • 2010-10-07
        • 2019-06-27
        • 1970-01-01
        • 2020-05-27
        • 2013-11-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-20
        相关资源
        最近更新 更多