Pour convertir une chaîne JSON en objet Java, Jackson est une bibliothèque Java open source largement appréciée pour sa flexibilité. Dans ce cas, explorons comment utiliser Jackson pour atteindre votre objectif :
La chaîne JSON fournie contient une structure de type carte avec des paires clé-valeur pour "libraryname" et une liste imbriquée de "mymusic" contenant d'autres paires clé-valeur.
<code class="java">ObjectMapper mapper = new ObjectMapper(); Map<String, Object> map = mapper.readValue(jsonString, Map.class);</code>
Cette approche traite le JSON comme une simple carte, où vous pouvez accéder aux valeurs à l'aide de la clé, telles que comme :
<code class="java">System.out.println(map.get("libraryname")); List<Map<String, Object>> songsList = (List<Map<String, Object>>) map.get("mymusic"); System.out.println(songsList.get(0).get("Artist Name"));</code>
<code class="java">JsonNode rootNode = mapper.readTree(jsonString);</code>
L'approche JSON Tree vous permet d'accéder à la structure JSON de manière plus dynamique :
<code class="java">System.out.println(rootNode.get("libraryname").asText()); JsonNode myMusicArray = rootNode.get("mymusic"); System.out.println(myMusicArray.get(0).get("Artist Name").asText());</code>
Vous pouvez également définir des objets Java Plain Old Java (POJO) pour représenter votre structure JSON :
<code class="java">public class Library { @JsonProperty("libraryname") private String name; @JsonProperty("mymusic") private List<Song> songs; } public class Song { @JsonProperty("Artist Name") private String artistName; @JsonProperty("Song Name") private String songName; } ObjectMapper mapper = new ObjectMapper(); Library library = mapper.readValue(jsonString, Library.class);</code>
Cette méthode vous permet d'accéder aux données dans un de manière plus orientée objet :
<code class="java">System.out.println(library.getName()); List<Song> songs = library.getSongs(); System.out.println(songs.get(0).getArtistName());</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!