Java
Python
import json
jsonstr = open(f"data.json", "r").read()
data = json.loads(jsonstr)
Shellscript (jq)
curl https://jsonplaceholder.typicode.com/todos/1 | jq
Query example
cat orderable.json | jq -r '.OrderableDBInstanceOptions | .[] | select(.StorageType == "io1" and .MultiAZCapable == true)'
Groovy
String > Object: JsonSlurper
def slurper = new JsonSlurper()
def result = slurper.parseText('{"person":{"name":"Guillaume", "age":100, "pets":["dog", "cat"]}}')
Object > String: JsonBuilder
new JsonBuilder(testMap).toString();
new JsonBuilder(testMap).toPrettyString()
Json Path
Json Path 는 Json 객체를 탐색하기 방법입니다. XPath 와 유사하다.
$
: ROOT 를 표시$.ELEMENT_NAME
: 하위 element 에 접근$.object.property
: 계층적으로 사용할 수 있음$.array[0:]
,$.array[1:]
,$.array[*]
: 배열을 처리 할 수 있음
Spring MvcResult Assertion 에서 유용하게 사용 가능하다
.andExpect(jsonPath("$.id", is(1)))
.andExpect(jsonPath("$.description", is("Lorem ipsum")))
.andExpect(jsonPath("$.title", is("Foo")));