【问题标题】:HQL and hasMany propertyHQL 和 hasMany 属性
【发布时间】:2013-12-10 12:56:13
【问题描述】:

我有这些物品:

class Employee {

    String firstName
    String lastName
    String username
    String password
    String email

和:

class HappyHourGroup {

    enum EventEnum {
        HAPPY_HOUR, RESTAURANT_CLOSE, OTHER
    }

    String name
    Employee creator
    Date date
    Double recieveBack
    Double totalCost
    EventEnum event

    static hasMany = [employees: Employee]

我想获取给定的员工对象,他在该组的员工中的最新组(日期)。我尝试了一些 HQL,但它根本不起作用。 我该怎么做才能做到这一点?

谢谢

【问题讨论】:

    标签: hibernate grails hql


    【解决方案1】:

    如果我没听错的话,你需要many-to-many 关系,所以添加

    static hasMany = [groups: HappyHourGroup]
    static belongTo = HappyHourGroup
    

    给员工。请注意,belongTo 可能会转到 HappyHourGroup?这取决于你想要什么级联行为。 要获取组列表,请尝试以下代码:

    Employee employee = employees.findBy.....
    HappyHourGroup.withCriteria {
      employees {
        eq('id',employee)
      }
      maxResults(1)
      order("date", "desc")
    }
    

    请参阅criteria 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-14
      • 1970-01-01
      • 2017-10-08
      • 2016-02-29
      • 2014-01-29
      • 2010-11-19
      • 2011-03-09
      • 1970-01-01
      相关资源
      最近更新 更多