Jackson を使用して JSON を汎用クラスに逆シリアル化する
JSON データを扱うとき、JSON 文字列をクラスに逆シリアル化する必要があるシナリオに遭遇することがあります。汎用パラメータを使用します。 Jackson ライブラリは、このような逆シリアル化シナリオを効果的に処理する方法を提供します。
JSON 文字列をジェネリック クラスに逆シリアル化するには、まずジェネリック型パラメーターを使用してクラスを定義する必要があります。
class Data<T> { int found; Class<T> hits }
ここで、JSON を Data のインスタンスに逆シリアル化するには、Jackson が提供する TypeReference クラスを使用できます。 TypeReference を使用すると、ジェネリック クラスの型を指定し、それに応じて JSON を逆シリアル化できます。
ObjectMapper mapper = new ObjectMapper(); String jsonString = "..."; TypeReference<Data<String>> typeRef = new TypeReference<>() {}; Data<String> data = mapper.readValue(jsonString, typeRef);
この例では、Data
TypeReference を使用する場合は、ジェネリック パラメーターの特定の型を指定する必要があることに注意することが重要です。この場合、T の型として String を指定しました。
TypeReference を利用することで、Jackson を使用して JSON をジェネリック クラスに効果的に逆シリアル化でき、複雑なデータ構造を簡単に処理できるようになります。
以上がJackson はどのようにして JSON を汎用クラスに逆シリアル化できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。