使用JsonSlurper解析MySQL Json输出返回groovy.lang.MissingMethodException

使用JsonSlurper解析MySQL Json输出返回groovy.lang.MissingMethodException,mysql,json,groovy,jsonslurper,Mysql,Json,Groovy,Jsonslurper,我目前正在研究一种方法,使用Groovy的JsonSlurper解析MySQL查询的一部分的输出 我试图从这个查询中提取LAT和LONG值 包含Json的查询可以很好地读入数据库,但是,当我尝试解析它时,会返回预期的值 Json在我的JsonSlurper中,我得到一个java Missing方法异常,它抱怨parseText()。错误建议使用parseText作为解决方案, 虽然这是正在使用的 错误如下: groovy.lang.MissingMethodException:没有方法的签名:g

我目前正在研究一种方法,使用Groovy的JsonSlurper解析MySQL查询的一部分的输出

我试图从这个查询中提取LAT和LONG值

包含Json的查询可以很好地读入数据库,但是,当我尝试解析它时,会返回预期的值 Json在我的JsonSlurper中,我得到一个java Missing方法异常,它抱怨parseText()。错误建议使用parseText作为解决方案, 虽然这是正在使用的

错误如下: groovy.lang.MissingMethodException:没有方法的签名:groovy.json.JsonSlurper.parseText()适用于参数类型:(java.util.ArrayList)

我的代码如下:

 SELECT   concat('{Address:"',n.address,'",LAT:"'map.details,'",LONG:"'map.details'"}') as list FROM table
查询中生成json的部分如下所示:

 SELECT   concat('{Address:"',n.address,'",LAT:"'map.details,'",LONG:"'map.details'"}') as list FROM table
然后,我在JsonSlurper方法中调用列表,该方法将作为应用程序中的数据库字段填充:

def result = new JsonSlurper().parseText(table.list)
def latitude = result.get("LAT")
def longitude = result.get("LONG")

println latitude
println longitude
然后,我计划在网页中填充这些字段,但在能够从解析返回这些字段之前,我无法这样做。
纬度和经度值是整数,尽管它们被解析为字符串。

查询的结果是JSON字符串列表,即使只有一个元素。使用

new JsonSlurper().parseText(table.list.first())

错误信息非常清楚。将
ArrayList
而不是
String
传递给
parseText
方法。