一个可选的方案是使用立即抓取,它可以按照下面的方法来指定:class Airport {
String name
static hasMany = [flights:Flight]
static mapping = {
flight fetch:"join"
}
}
在这种情况下 Airport 实例对应的 flights 关联会被一次性全部加载进来(依赖于映射).
这样的好处是执行更少的查询,但是要小心使用,因为使用太多的eager关联可能会导致你将整个数据库加载进内存.
关联也可以用 ORM DSL 将关联声明为 non-lazy