Jackson
라이브러리를 사용하여 중복 키가있는 잘못된 구조로 json을 구문 분석하려고합니다. json에 중복 키가있는 경우이를 Collection
으로 추출하고 싶습니다.중복 키를 포함하는 json 구문 분석
Wireshark
JSON 수출에서 온다) 내가 구문 분석하려고 해요의
예 :이 JSON 중복 키를 가지고 있기 때문에, 마지막에만
{
"a": "a",
"a": {
"b": {
},
"b": true
}
}
그러나 값이 그대로 유지됩니다 :
JsonNode tree = new ObjectMapper().readTree(json);
System.out.println(tree); // {"a":{"b":true}}
는 또한 중첩 된 JSON 객체에 대한 예상대로, 그러나 그것은 작동하지 않습니다, Multimap
지원이있는 Guava
모듈을 시도했습니다.
ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new GuavaModule());
mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
Multimap read = mapper.readValue(json, Multimap.class);
System.out.println(read); // {a=[a, {b=true}]}
가 어떻게 Jackson
라이브러리를 사용하여이 문제를 해결해야합니다 전에 내가 보여
json으로 대한 구아바 모듈을 사용하여 예? java와 같은 json 구조의 구문 분석을 지원하는 다른 라이브러리가 있습니까?
유효한 JSON의
메이븐 의존성이 너무 구문 분석 라이브러리 방식으로 작동해서는 안, 중복 키가없는 당신 다시 묻습니다. –
SyntaxError : 3 번째 줄에 중복 키 'a'가 있습니다. –