hibernate:无法在hql中访问映射的键或值

时间:2013-01-07 18:05:21

标签: hibernate map

假设我有以下课程:

@Entity
public class CompanyImpl extends BaseEntity {

    @OneToMany(cascade=CascadeType.ALL)
    private Map<Cat,Flight> flightCats;

Cat和Flight类都有“name”属性。 我怎么能:

  1. 选择一家名为“Tech”的公司及其一对名为“Meow”
  2. 的猫的地图
  3. 选择一家名为“Tech”的公司以及一对名为“Ocean”的航班的地图 ?
  4. 我想到像

    这样的东西
      

    来自CompanyImpl co left join fetch co.flightCats fc where   co.name ='Tech'和fc.cat.name ='Meow'

    但它不起作用:(

1 个答案:

答案 0 :(得分:1)

http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/queryhql.html#queryhql-expressions

如果您仔细阅读文档,您会注意到您无法做到您想要的。您只能根据地图的内容选择公司,但不能将地图与查询一起分组。