Heim  >  Artikel  >  Java  >  Wie konvertiert man JSON-Strings mit Jackson JSON in Karten?

Wie konvertiert man JSON-Strings mit Jackson JSON in Karten?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-30 16:59:26701Durchsuche

How to Convert JSON Strings to Maps with Jackson JSON?

JSON-Strings in Karten mit Jackson JSON konvertieren

Jackson JSON ist eine beliebte Java-Bibliothek zum Konvertieren von JSON-Strings in verschiedene Datenstrukturen. Beim Versuch, JSON in eine Map zu konvertieren, ist jedoch ein ungeprüfter Zuweisungsfehler aufgetreten. könnte frustrierend sein.

Um dieses Problem zu beheben, führen Sie die folgenden Schritte aus:

  1. Verwenden Sie TypeReference:

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

    <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>

Für die native Java-JSON-Konvertierung können Sie JSON.org erkunden. Darüber hinaus erfahren Sie hier, wie Sie in Jackson eine ähnliche JSON-Dekodierungsfunktionalität erreichen:

<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>

Dadurch wird ein JSON-Objekt mit einem Array von Alben generiert, das die gleiche Funktionalität wie json_decode($str) von PHP bietet.

Das obige ist der detaillierte Inhalt vonWie konvertiert man JSON-Strings mit Jackson JSON in Karten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn