【问题标题】:Java HQL how to access objects after using a joinJava HQL如何在使用连接后访问对象
【发布时间】:2015-04-14 19:33:11
【问题描述】:

试图了解如何使用 HQL 连接。

def result=Food.findAll('from MealItems as m, Nutrition as n where m.food=n.food);

结果返回,但我不明白它返回的确切方式/内容。
我可以访问每个结果的 Nutrition 对象吗?

for(row in result){
     var ntr=row.nutrition;
     println ntr.calories;
   } 

【问题讨论】:

    标签: java hibernate groovy hql


    【解决方案1】:

    建议你应该在hibernate上阅读。

    它将结果集转换为对象数组列表。最终,如果它能够将结果映射到相应的类,那么它就会这样做。

    看看这些链接。它应该有帮助 How hibernate works with HQL query if the Transformer is not explicit declared

    http://levelup.lishman.com/hibernate/hql/joins.php

    【讨论】:

    • 看起来没有办法做我想做的事(本质上就像使用 mysql 连接表),除非域类明确共享一个属性引用?
    • 您可以在数据库级别连接没有链接的表。但是你会得到作为对象数组列表的结果。我建议您阅读休眠转换对象,它将您的对象数组转换为有意义的类。我还没有探索过自己,但这可以帮助你进一步
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多