Jackson Json Parser를 사용하여 JSON 문자열에서 값을 가져온 다음 Java Object에 연결합니다. 다음은 내가 다루고있는 JSON 종류의 덩어리입니다.Jackson JsonParser 배열 토큰 가져 오기
{
"address":"aURL",
"links":[
"aURL",
"aURL",
"aURL"
]
}
다음은 Java 코드에서 수행 한 작업입니다. net은 전역 ArrayList이며 Page 객체에는 String 주소 필드와 String [] 링크 필드가 있습니다. JSON에서 링크의 String 배열을 가져와 Page 객체에 연결하려고합니다. getText() 메서드로 주소 문자열을 쉽게 추출 할 수는 있지만 String 배열을 잡는 편리한 방법을 생각할 수는 없습니다. 여기 내 코드는 바로 지금입니다 : 그냥 거 너무 다루기 힘든 일하지 않는 이상
private static void parse(String json) throws IOException {
JsonParser parser = new JsonFactory().createJsonParser(json);
while (parser.nextToken() != JsonToken.END_OBJECT) {
String tok = parser.getCurrentName();
Page p = new Page();
if ("address".equals(tok)) {
parser.nextToken();
p.setAddress(parser.getText());
}
if ("links".equals(tok)) {
parser.nextToken();
//p.setLinks(HOW TO GET STRING ARRAY)
}
net.add(p);
}
}
내가, 내가 사용하고있는 JsonParser nexting 방법을 고수하는 것을 선호합니다.
Gson과 같은 훨씬 간단한 것을 사용하지 않은 특별한 이유는 무엇입니까? – IamNguele