grails服务函数的返回类型是什么?

grails服务函数的返回类型是什么?,grails,projection,criteriaquery,Grails,Projection,Criteriaquery,我有这样一个grails服务函数 public List<Object> getfunction(def test, def test1) { def criteria = Test.createCriteria(); List<Object> list= criteria.list { projections{ groupProperty('state') rowCount() } } } p

我有这样一个grails服务函数

public List<Object> getfunction(def test, def test1) {
  def criteria = Test.createCriteria();
  List<Object> list= criteria.list {
      projections{
          groupProperty('state')
          rowCount()
      }
  }
}
public List getfunction(def test,def test1){
def criteria=Test.createCriteria();
列表=标准。列表{
投影{
groupProperty(“状态”)
行计数()
}
}
}
但我对这种返回类型有点困惑 函数,在当前的实现中它正在工作,但我知道它是错误的返回类型


请提前提出建议,谢谢。

由于grails使用groovy,并且在groovy中,方法的最后一条语句用于返回,所以您编写的代码可以正常工作。因此,除非函数类型为void,否则将返回在任何方法末尾写入的内容

例如:

String getFullName() {
    String firstName = "S"
    String lastName = "A"

    firstName + " " + lastName
}

这将自动返回连接的字符串。

这可能会有所帮助。以下所有操作的作用完全相同:

public List<Object> getfunction(def test, def test1) {
    def criteria = Test.createCriteria();
    List<Object> list= criteria.list {
        projections{
            groupProperty('state')
            rowCount()
        }
    }
}

public List<Object> getfunction(def test, def test1) {
    def criteria = Test.createCriteria();
    List<Object> list= criteria.list {
        projections{
            groupProperty('state')
            rowCount()
        }
    }
    return list
}

public List<Object> getfunction(def test, def test1) {
    def criteria = Test.createCriteria();
    List<Object> list= criteria.list {
        projections{
            groupProperty('state')
            rowCount()
        }
    }
    list
}

public List<Object> getfunction(def test, def test1) {
    def criteria = Test.createCriteria();
    return criteria.list {
        projections{
            groupProperty('state')
            rowCount()
        }
    }
}

public List<Object> getfunction(def test, def test1) {
    def criteria = Test.createCriteria();
    criteria.list {
        projections{
            groupProperty('state')
            rowCount()
        }
    }
}
public List getfunction(def test,def test1){
def criteria=Test.createCriteria();
列表=标准。列表{
投影{
groupProperty(“状态”)
行计数()
}
}
}
公共列表getfunction(def测试、def测试1){
def criteria=Test.createCriteria();
列表=标准。列表{
投影{
groupProperty(“状态”)
行计数()
}
}
返回列表
}
公共列表getfunction(def测试、def测试1){
def criteria=Test.createCriteria();
列表=标准。列表{
投影{
groupProperty(“状态”)
行计数()
}
}
列表
}
公共列表getfunction(def测试、def测试1){
def criteria=Test.createCriteria();
返回条件.列表{
投影{
groupProperty(“状态”)
行计数()
}
}
}
公共列表getfunction(def测试、def测试1){
def criteria=Test.createCriteria();
标准列表{
投影{
groupProperty(“状态”)
行计数()
}
}
}
return语句是可选的。如果没有return语句,则返回最后一个表达式的计算结果


我希望这能有所帮助。

为什么你认为退货类型是错误的?不,这是完全正确的?带有预测退货列表的标准,所以是的,它是正确的。哦。。。谢谢,我对此有点怀疑。谢谢你抽出时间。还让我检查一下。
println getfunction(…)
是最好的疑点杀手>)