获取一对多加载对象的ID,而无需再使用GORM访问数据库

时间:2011-08-29 16:16:14

标签: grails groovy gorm

我需要GORM域名,A& B,与数据库表有关。 A与B具有一对多关系。因此,类看起来类似于:

class A {
   B b
   Long id
}

class B {
   Long id
}

当我检索A的实例时,从数据库中检索到相应B实例的ID。但是,当我尝试通过以下方式访问该ID时:

A a = A.get(11)
Long bid = a.b.id

从数据库加载整个对象。在某些情况下,我只想要B的ID(已经检索过)并且不想从数据库加载整个实例。有没有办法从B获取ID而无需返回并获取整个对象。

注意:我知道它正在上面使用a.b.id进行额外提取,因为我可以看到自从我打开DataSource文件中的loggingSql选项后生成的SQL。

1 个答案:

答案 0 :(得分:9)

而不是:

  

长期出价= a.b.id

使用:

  

长期出价= a.bId