ホームページ >Java >&#&チュートリアル >Jackson を使用してオブジェクトの JSON 配列を逆シリアル化する方法は?
Jackson を使用したオブジェクトの配列の逆シリアル化
JSON データを扱う場合、多くの場合、オブジェクトの配列を解析する必要があります。データ バインディング用の人気のある Java ライブラリである Jackson は、このような構造の逆シリアル化のサポートを提供します。
Jackson のドキュメントには、「サポートされているすべての型の配列」を逆シリアル化できると記載されています。ただし、このプロセスの具体的な構文はすぐには分からないかもしれません。 Jackson を使用した配列の逆シリアル化を明確にするために、次のシナリオを検討してみましょう:
単一オブジェクトの逆シリアル化
次の JSON 入力について考えてみましょう:
{ "id" : "junk", "stuff" : "things" }
この JSON を MyClass という名前の Java オブジェクトに逆シリアル化するには、次のコードを使用します。コード:
//json input { "id" : "junk", "stuff" : "things" } //Java MyClass instance = objectMapper.readValue(json, MyClass.class);
オブジェクトの配列の逆シリアル化
MyClass オブジェクトの配列の場合、JSON 入力は次のようになります:
[{ "id" : "junk", "stuff" : "things" }, { "id" : "spam", "stuff" : "eggs" }]
この配列を MyClass オブジェクトの Java リストに逆シリアル化するには、次の 2 つがあります。オプション:
配列として:
MyClass[] myObjects = mapper.readValue(json, MyClass[].class);
リストとして:
List<MyClass> myObjects = mapper.readValue(jsonInput, new TypeReference<List<MyClass>>() {});
または、リストの種類:
List<MyClass> myObjects = mapper.readValue(jsonInput, mapper.getTypeFactory().constructCollectionType(List.class, MyClass.class));
これらのメソッドに従うことで、 Jackson を使用してオブジェクトの配列を効果的に逆シリアル化し、Java コードでその内容に簡単にアクセスできます。
以上がJackson を使用してオブジェクトの JSON 配列を逆シリアル化する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。