ネストされたjson構造があります:
"info": [
{
"name":"Alice",
"phone": [{
"home": "1234567890",
"mobile": "0001112223"
}]
},
{
"name":"Bob",
"phone": [{
"home": "3456789012",
"mobile": "4445556677"
}]
}
]
ジャクソンを使用しています。「Bob」に関する情報のみを抽出してツリーに読み込みたいだけです。構造全体をツリーに読み込んで (その方法は知っています)、ボブに関する情報を抽出したくありません。ストリーミング API (JsonParser) を使用して、まず "Bob" ですべての情報を抽出し、それを jsontree にします。
私はそれをバイト配列に読み込んでから、それを次のようにツリーに変換すると思いました:
JsonToken token = null;
byte[] data;
int i = 0;
while( jParser.nextToken()!=JsonToken.END_ARRAY) {
data[i] = jParser.getByteValue();
i ++;
}
JsonNode node = null;
ObjectMapper objectMapper = new ObjectMapper();
try {
node = objectMapper.readValue(jParser, JsonNode.class);
}
catch(Exception e) {
e.printStackTrace();
}
ただし、これは私が望む結果を返していません。jsonParse 例外があるので、これは行くべき道ではないと思います。