Traitement JSON en Java : bibliothèques et exemples pratiques

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Traitement JSON en Java : aperçu des bibliothèques et exemples pratiques



JSON (JavaScript Object Notation) est un format léger d'échange de données, largement utilisé dans le développement web, les applications mobiles et les microservices. En Java, il existe plusieurs bibliothèques populaires pour travailler avec JSON. Dans cet article, nous examinerons les trois principales : Jackson, Gson et org.json, et nous fournirons des exemples pratiques d'analyse, de sérialisation et de génération de JSON.



1. Jackson — la bibliothèque la plus populaire



Jackson (com.fasterxml.jackson.core) est une bibliothèque puissante avec des performances élevées. Elle prend en charge les annotations, les flux et la configuration complète du mappage. Pour l'ajouter, incluez dans Maven :



<dependency>    <groupId>com.fasterxml.jackson.core</groupId>    <artifactId>jackson-databind</artifactId>    <version>2.15.2</version></dependency>


Exemple : sérialisation d'un objet en JSON



import com.fasterxml.jackson.databind.ObjectMapper;import java.util.*;

public class JacksonExample { public static void main(String[] args) throws Exception { ObjectMapper mapper = new ObjectMapper();

// Création d'un objet Map<String, Object> user = new HashMap<>(); user.put("name", "Иван"); user.put("age", 30); user.put("skills", Arrays.asList("Java", "Spring", "SQL"));

// Sérialisation en chaîne JSON String json = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(user); System.out.println(json); }}


Sortie :



{  "name" : "Иван",  "age" : 30,  "skills" : [ "Java", "Spring", "SQL" ]}


Exemple : analyse JSON en objet Java



import com.fasterxml.jackson.databind.ObjectMapper;

public class ParseJson { public static void main(String[] args) throws Exception { String json = "{\\"name\\":\\"Анна\\",\\"age\\":25}";

ObjectMapper mapper = new ObjectMapper(); User user = mapper.readValue(json, User.class);

System.out.println("Nom : " + user.getName()); System.out.println("Âge : " + user.getAge()); }}

class User { private String name; private int age;

// getters et setters obligatoires public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; }}


2. Gson — une bibliothèque légère et simple de Google



Gson (com.google.code.gson) se distingue par la simplicité de son API et une configuration minimale. Convient aux petits projets. Maven :



<dependency>    <groupId>com.google.code.gson</groupId>    <artifactId>gson</artifactId>    <version>2.10.1</version></dependency>


Exemple : génération de JSON à partir d'une Map



import com.google.gson.Gson;import com.google.gson.GsonBuilder;import java.util.*;

public class GsonExample { public static void main(String[] args) { Gson gson = new GsonBuilder().setPrettyPrinting().create();

Map<String, Object> data = new LinkedHashMap<>(); data.put("title", "Пример"); data.put("completed", false); data.put("tags", List.of("java", "json"));

String json = gson.toJson(data); System.out.println(json); }}


Exemple : analyse JSON en liste d'objets



import com.google.gson.Gson;import com.google.gson.reflect.TypeToken;import java.lang.reflect.Type;import java.util.*;

public class GsonParseList { public static void main(String[] args) { String json = "[{\\"id\\":1,\\"name\\":\\"Товар А\\"},{\\"id\\":2,\\"name\\":\\"Товар Б\\"}]";

Recommendations