ホームページ  >  記事  >  Java  >  Jackson JSON を使用して JSON 文字列をマップに変換する方法

Jackson JSON を使用して JSON 文字列をマップに変換する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-30 16:59:26701ブラウズ

How to Convert JSON Strings to Maps with Jackson JSON?

Jackson JSON を使用した JSON 文字列のマップへの変換

Jackson JSON は、JSON 文字列をさまざまなデータ構造に変換するための人気のある Java ライブラリです。ただし、JSON を Map に変換しようとすると、未チェックの割り当てエラーが発生しました。

この問題を解決するには、次の手順に従ってください:

  1. TypeReference を使用します:

    <code class="java">TypeReference<HashMap<String, String>> typeRef
            = new TypeReference<HashMap<String, String>>() {};
    
    HashMap<String, String> propertyMap = mapper.readValue(properties, typeRef);</code>
  2. Use Generic JsonNode:

    <code class="java">JsonNode rootNode = mapper.readTree(properties);
    
    if (rootNode.isObject()) {
        Map<String, String> propertyMap = new HashMap<>();
        rootNode.fields().forEachRemaining(field -> propertyMap.put(field.getKey(), field.getValue().asText()));
    }</code>

ネイティブ Java JSON 変換については、JSON.org を参照してください。さらに、同様の JSON デコード機能を Jackson で実現する方法は次のとおりです。

<code class="java">ObjectNode albumList = mapper.createObjectNode();

ArrayNode albums = mapper.createArrayNode();
albums.add(mapper.createObjectNode().put("title", "Album 1"));
albums.add(mapper.createObjectNode().put("title", "Album 2"));

albumList.put("albums", albums);

System.out.println(albumList);</code>

これにより、アルバムの配列を含む JSON オブジェクトが生成され、PHP の json_decode($str) と同じ機能が提供されます。

以上がJackson JSON を使用して JSON 文字列をマップに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。