Я использую Jackson Json Parser для получения значений из строки JSON, а затем подключаю их к объекту Java. Вот кусок типа JSON, с которым я имею дело:
{
"address":"aURL",
"links":[
"aURL",
"aURL",
"aURL"
]
}
Вот что у меня происходит в моем Java-коде. net является глобальным ArrayList, объекты Page имеют поле адреса String и поле ссылок String[]. Я хочу получить массив ссылок String из JSON и подключить их к объекту 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, который я использую, если только он не будет слишком громоздким.