在 Eager and Lazy Fetching立即加载和延迟加载 这节,我们讨论了如果指定特定的抓取方式来避免N+1查询的问题。
这个criteria查询也可以做到:def criteria = Task.createCriteria()
def tasks = criteria.list{
eq "assignee.id", task.assignee.id
join 'assignee'
join 'project'
order 'priority', 'asc'
}
注意这个 join 方法的用法. This method indicates the criteria API that a JOIN query should be used to obtain the results.