Grails:DomainClass.findAllBy *的返回类型是什么?

时间:2015-01-28 18:00:03

标签: grails

grails有findAllBy*的文档,但它并没有告诉你它返回什么,或者如何使用它。 E.g。

def results = Book.findAllByTitleLike("%Hobbit%)

结果是地图吗?一套?一个列表?具有分页和附加功能的特殊对象,并包含一组Books?

intellij不知道类型或结果是什么(它认为它是一本书),官方grails文档没有告诉你,谷歌没有返回任何例子(我能找到),所以怎么能找到这样的信息?

如果没有找到书籍,会返回什么?空值?和某种空集合? 如何安全地确定找到的书籍数量? 如何访问退回的书籍? 他们订购了吗?

1 个答案:

答案 0 :(得分:8)

findAllBy 返回:

  • 一个 ArrayList of Books,如果找到的话。
  • 空的 ArrayList ,如果找不到。

findBy (用于返回单个项目)返回:

  • 一本书,如果找到的话
  • 空白时
  • null

如果您对Groovy中的对象返回类型感到好奇,可以使用Apache Commons ReflectionToStringBuilder来显示返回类型:

import org.apache.commons.lang.builder.ReflectionToStringBuilder
...
log.error (new ReflectionToStringBuilder(results).toString())