Heim  >  Artikel  >  Java  >  Wie konvertiere ich einen JSON-String in eine Map mit Jackson in Java?

Wie konvertiere ich einen JSON-String in eine Map mit Jackson in Java?

Linda Hamilton
Linda HamiltonOriginal
2024-10-30 21:03:03630Durchsuche

How to Convert a JSON String to a Map<String, String> Jackson in Java verwenden? 
Jackson in Java verwenden? " />

So konvertieren Sie einen JSON-String in eine Map mit Jackson JSON

Frage:

Der Versuch, einen JSON-String mit Jackson in einen Map zu json_decode in PHP.

Antwort:

Der richtige Ansatz bei der Verwendung von Jackson JSON besteht darin, eine TypeReference zu nutzen, um den gewünschten Kartentyp wie folgt anzugeben:

<code class="java">public void testJackson() throws IOException {  
    ObjectMapper mapper = new ObjectMapper(); 
  
    TypeReference<HashMap<String,Object>> typeRef 
            = new TypeReference<HashMap<String,Object>>() {};

    HashMap<String,Object> o = mapper.readValue(from, typeRef); 
    System.out.println("Got " + o); 
}  </code>

Zum Lesen aus einer Zeichenfolge erhalten Sie einen InputStream mit new ByteArrayInputStream(astring.getBytes("UTF-8")) und übergeben ihn an mapper.readValue().

Alternatives natives Java JSON-Konvertierung:

Jackson ist nicht die einzige Option für die JSON-Konvertierung in Java. Die Gson-Bibliothek von Google bietet einen intuitiveren Ansatz:

  1. Importieren Sie die Gson-Klasse.
  2. Erstellen Sie ein Gson-Objekt.
  3. Verwenden Sie Gson.fromJson(), um einen JSON-String in den gewünschten Objekttyp zu konvertieren, in diesem Fall eine Map.

Zusätzlicher Hinweis:

Die ursprüngliche Antwort wurde aktualisiert, um die Empfehlung zur Verwendung der Gson-Bibliothek anstelle von Jackson widerzuspiegeln.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen JSON-String in eine Map mit Jackson in Java?. 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