2016-12-08 1 views
1

Groovy를 처음 사용하여 JSON 응답을 구문 분석해야합니다. 응답은 다음과 같습니다.groovy를 사용하여 JSON 응답 구문 분석

[ 
    { 
     "name": "John", 
     "start_date": "2016-09-30", 
     "sort_order": 1 
    }, 
    { 
     "name": "Tony", 
     "start_date": "2016-06-30", 
     "sort_order": 2 
    } 
] 

어떻게 각 개체를 가져올 수 있습니까? 각 학생의 이름, start_date 및 sort_order로 함께 끝내고 싶습니다.

답변

3

당신은 JsonSlurper

import groovy.json.* 

def json = '''[ 
    { "name": "John", "start_date": "2016-09-30", "sort_order": 1 }, 
    { "name": "Tony", "start_date": "2016-06-30", "sort_order": 2 } ]''' 

def parsed = new JsonSlurper().parseText(json) 

assert parsed.name == ['John', 'Tony'] 
+0

당신이 삿대를 젓는 사람이 작업을 수행하기위한 요구하고 무엇을 얻기 위해 사용합니다,하지만 당신이 원하는 parsed.each {을에 println}을 받아야하는 것입니다. – visch

+0

응답 해 주셔서 감사합니다. 그러나 나는 전체 객체 수를 인쇄 한 다음 각 객체를 인쇄하여 원하는 결과에 대해 좀 더 명확하게해야합니다. 총 학생수 2, 학생 1은 (name = john, start_date = 2016-09-30), 학생 2는 정렬 순서에 따라 (name = Tony, start_date = 2016-06-30) – Punter

+0

이 비트를 추가하면 내가 원하는거야. 감사합니다 tim_yates 및 dataman. (분석의 항목)에 대한 { 데프 item.name \t DEF의 startDate = item.start_date \t DEF있는 sortOrder = \t에 println item.sort_order = "을 이름은"이름 \t + "의 startDate는" \t에 println 이름 + startDate \t println "sortOrder는 다음과 같습니다."+ sortOrder } – Punter