Grails 1.3.7 +如何停止执行Creatcriteria

时间:2014-05-09 05:07:42

标签: grails

我正在使用Grail 1.3.7

我正在为具有大量数据的域对象执行createCriteria。并花很长时间来获取结果。

如何停止执行。还是有其他实施方式。

由于 桑托什

1 个答案:

答案 0 :(得分:0)

我不知道Grails中的任何功能允许您取消长时间运行的查询。对于初学者,在从数据库中提取所有请求的结果之前,不会返回在Criteria上调用list()。我认为你需要专注于能够使查询在第一时间表现更好的事情:

  • 显然,添加更多条件,如果可能,限制行
  • 使用maxResults限制返回的行数
  • 如果您不需要域对象中的所有值,请使用property投影以防止必须创建域对象并减少内存
  • 如果您需要迭代大量数据,请使用scroll()并定期flush()clear()会话以防止放慢速度。