내 Groovy 코드에서 두 변수를 선언했습니다.Groovy의 JsonBuilder로 두 요소 객체를 만들려면 어떻게해야합니까?
results
은 맵의 배열입니다. 여기에는 SQL 조회에서 리턴 된 행 목록이 들어 있습니다.
overall
은지도입니다. 그것은 개별 SQL 쿼리의 단일 행을 나타냅니다.
이 두 변수를 하나로 결합하여 전체를 JSON으로 출력하고 싶습니다. 결국, 나는 이런 식으로 뭔가보고 싶지 :
{"data":[{"results":"array"}],"overall":{"overall":"map"}}
여기 내가 사용하려고 해요 코드입니다,하지만 그것은 작동하지 않습니다
def json = new groovy.json.JsonBuilder()
def finalJSON = json {
data results
overall overall
}
return json.toString()
을하지만이 작동하지 않습니다 나는 두 변수 results
및 overall
그들에 올바른 데이터를 확인할 수 있습니다
groovy.lang.MissingPropertyException: No such property: call for class: groovy.sql.GroovyRowResult
: ... 다음과 같은 예외가 발생합니다. JsonBuilder 구문을 이해하지 못하고있는 것 같습니다.
좋아import groovy.json.*
def r = [[l:1],[l:2]]
def o = [over:1,all:2]
def json = new JsonBuilder()
json {
data r
overall o
}
println json.toPrettyString()
def m = [data: r, overall: o]
println JsonOutput.prettyPrint(JsonOutput.toJson(m))
어디에서 오류가 발생합니까? 정확히 결과와 전반적인 것은 무엇입니까? 내가 몇 가지 SQL 결과. 하지만 지금까지 어떻게 변환 했습니까? – cfrick