logo

Convertir un objet Java en JSON

JSON représente Notation d'objet JavaScript il s'agit d'un très petit format pondéré pour stocker et transporter des données. Le format JSON est très simple à comprendre car il possède un auto-description nature. JSON est principalement utilisé pour transmettre des données entre un serveur et une application web.

Les détails d'un employé écrits au format JSON ressemblent à :

 { 'Employee': { 'name': 'Emma Watson', 'salary': 40000, 'married': false } } 

Objet Java est une instance d'une classe ou d'un composant autonome ayant des propriétés et des méthodes permettant de rendre utile un certain type de données. Java l'objet a un état, un comportement et une identité.

L'objet Java d'un employé s'écrit de la manière suivante :

 //Defining an Employee class class Employee{ //Defining properties String name; int salary; Boolean married; //creating main() method of teh Employee class public static void main(String args[]){ //Creating object of Employee class Employee emp =new Employee(); emp.name = 'Emma Watson'; emp.salary = 40000; emp.married = false; //Printing values of the object System.out.println(emp.name); System.out.println(emp.salary); System.out.println(emp.married); } } 

Nous devons souvent convertir des objets Java en JSON afin de pouvoir les comprendre facilement. Pour convertir un objet Java en objet JSON, nous disposons des deux méthodes suivantes :

  1. Utiliser la bibliothèque GSON
  2. Utiliser l'API Jackson
Convertir un objet Java en JSON

Comprenons les deux un par un.

Utiliser la bibliothèque GSON

Le GSON La bibliothèque joue un rôle important dans la conversion d'un objet Java en JSON. La bibliothèque GSON convertit non seulement l'objet Java en JSON, mais l'utilise également pour convertir la chaîne JSON en son objet Java équivalent.

Voici les étapes suivantes pour convertir un objet Java en JSON :

  1. Créez un projet Maven.
  2. Ajouter une dépendance GSON dans XML déposer.
  3. Créez un objet Java ancien à convertir en JSON.
  4. Créez une classe Java pour convertir l'objet Java en JSON.
Convertir un objet Java en JSON

Étape 1 : Créer un projet Maven

Dans un premier temps, nous devons créer un projet maven à l’aide de l’IDE ​​Eclipse. La conversion d'objets Java en JSON est un concept Java avancé, nous vous recommandons donc d'utiliser un IDE comme Eclipse pour comprendre facilement les programmes.

Convertir un objet Java en JSON

Étape 2 : Ajouter une dépendance GSON dans pom.xml

À l'étape suivante, nous devons ajouter la dépendance GSON suivante dans le fichier pom.xml pour utiliser la bibliothèque GSON.

comment convertir str en int
 com.google.code.gson gson 2.8.6 

Après avoir ajouté la dépendance, le fichier pom.xml ressemble à ceci :

Convertir un objet Java en JSON

Étape 3 : Créez POJO à convertir en JSON

Dans la prochaine étape, nous devons créer un POJO , que nous souhaitons convertir en objet JSON . Dans notre exemple, nous créons une classe MobilePhone avec des getter et des setters pour marque, nom, bélier , et ROM .

TéléphoneMobile.java

 package javaTpoint.JavaObjectToJSON; //Creating MobilePhone class public class MobilePhone { //Creating properties of the class private String brand; private String name; private int ram; private int rom; //Setter and Getters public String getBrand() { return brand; } public void setBrand(String brand) { this.brand = brand; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getRam() { return ram; } public void setRam(int ram) { this.ram = ram; } public int getRom() { return rom; } public void setRom(int rom) { this.rom = rom; } Overriding the toString() method @Override public String toString() { // TODO Auto-generated method stub return ''MobilePhone [MobileBrand '+ brand + ', MobileName = ' + name + ', RAM = ' + ram + ', ROM = ' + rom + ']'; } } 

Étape 4 : Créez une classe Java pour convertir l'objet Java en JSON

Nous devons créer une nouvelle classe Java qui utilise GSON pour convertir l'objet MobilePhone en JSON. Dans cette classe, nous allons créer la méthode getMobile(). Dans la méthode, nous définissons les valeurs des propriétés de la classe MobilePhone et renvoyons l'objet MobilePhone.

Dans la méthode principale, nous allons créer un objet de la classe MobilePhone et stocker la valeur renvoyée par la méthode geMobile(). Après cela, nous utiliserons le Gson().toJson() méthode pour convertir cet objet en un objet JSON.

ConvertJSON.java

défaut général de protection
 package JavaTpoint.JavaObjectToJSON; import com.google.gson.Gson; public class ConvertJSON { public static MobilePhone getMobile(MobilePhone mobile) { mobile.setBrand('SAMSUNG'); mobile.setName('J2 Core'); mobile.setRam(2); mobile.setRom(4); return mobile; } public static void main(String[] args) { // TODO Auto-generated method stub MobilePhone mobilePhone = new MobilePhone(); mobilePhone = getMobile(mobilePhone); System.out.println('The JSON representation of Object mobilePhone is '); System.out.println(new Gson().toJson(mobilePhone)); } } 

Lorsque nous exécutons le fichier ConvertJSON.java, nous verrons l'objet JSON de l'objet de classe MobilePhone.

Convertir un objet Java en JSON

Utiliser la bibliothèque Jackson

Jackson La bibliothèque est l'une des bibliothèques Java les plus simples. La bibliothèque Jackson est utilisée pour sérialiser l'objet Java en JSON et vice versa. Le ObjetMapper La classe de l'API Jackson fournit des méthodes pour convertir l'objet Java au format ou en objet JSON. Le ObjetMapper classe writeValueAsString() La méthode prend l'objet JSON comme paramètre et renvoie sa chaîne JSON respective.

Voici les étapes suivantes pour convertir l'objet Java en objet JSON à l'aide de l'API Jackson :

  1. Créer un projet Maven
  2. Ajoutez la dépendance Jackson au fichier pom.xml.
  3. Créez un objet POJO.
  4. Créez une nouvelle classe pour convertir un objet Java en objet JSON.
Convertir un objet Java en JSON

Étape 1 : Créer un projet Maven

Dans un premier temps, nous devons créer un projet maven à l’aide de l’IDE ​​Eclipse. Tout comme GSON, l'API Jackson est également prise en charge par Eclipse.

Convertir un objet Java en JSON

Étape 2 : Ajouter la dépendance Jackson dans pom.xml

À l'étape suivante, nous devons ajouter la dépendance Jackson suivante dans notre fichier pom.xml pour utiliser la bibliothèque Jackson.

 com.fasterxml.jackson.core jackson-databind 2.12.1 

Convertir un objet Java en JSON

Étape 3 : Créez POJO à convertir en JSON

Dans l'étape suivante, nous devons créer un POJO, que nous souhaitons convertir en objet JSON. Dans cet exemple, nous créons une classe Product ayant un getter et des setters pour les propriétés telles que pièce d'identité, nom, et prix .

Produit.java

 package JavaTpoint.JavaObjectToJSON; //Creating Product class public class Product { //Creating properties of Product class private int id; private String name; private int price; //Getter and Setters public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } @Override public String toString() { // TODO Auto-generated method stub return ''Product [ProductId '+ id + ', ProductName = ' + name + ', ProductPrice = ' + price + ']'; } } 

Étape 4 : Créez une classe Java pour convertir l'objet Java en JSON

Tout comme notre exemple précédent de GSON, nous allons également créer une nouvelle classe Java ObjetVersJson . À l'intérieur de la méthode, nous avons créé la méthode getObjectData() pour définir les valeurs de l'objet Product et renvoyer cet objet de la classe Product.

Dans la méthode main(), nous avons créé un objet de la classe Product et de la classe ObjectMapper. Après cela, nous utiliserons le writeValueAsString() méthode de la classe ObjectMapper pour convertir l'objet Java en un objet JSON.

ObjetVersJson.java

 package JavaTpoint.JavaObjectToJSON; import java.io.IOException; import com.fasterxml.jackson.databind.ObjectMapper; public class ObjectToJson { public static void main(String[] a) { // Creating object of Product Product product = new Product(); // Inserting the data into the object product = getObjectData(product); // Creating Object of ObjectMapper define in Jackson API ObjectMapper Obj = new ObjectMapper(); try { // Converting the Java object into a JSON string String jsonStr = Obj.writeValueAsString(product); // Displaying Java object into a JSON string System.out.println(jsonStr); } catch (IOException e) { e.printStackTrace(); } } // Getting data that we want to insert into an object public static Product getObjectData(Product product) { // Insert the data product.setId(101); product.setName('Spark 131'); product.setPrice(10000); // Returning the product object return product; } } 

Quand nous exécutons le ObjetVersJson.java fichier, nous verrons la chaîne JSON de l’objet de classe Product.

Convertir un objet Java en JSON

Les deux méthodes sont utilisées dans différents scénarios. Les deux sont simples, rapides et faciles à utiliser et à comprendre.

surcharge de méthode