Maison > Java > javaDidacticiel > le corps du texte

Comment convertir une carte en objet JSON à l'aide de l'API JSON-lib en Java ?

WBOY
Libérer: 2023-08-29 16:37:02
avant
892 Les gens l'ont consulté

如何使用Java中的JSON-lib API将Map转换为JSON对象?

JSONObject est une collection non ordonnée de paires nom/valeur, tandis que Map est un objet qui mappe les clés aux valeurs. Les cartes ne peuvent pas contenir de doublonsclés, et chaque clé peut être mappée à au plus une valeur. Nous devons utiliser la bibliothèque JSON-lib pour sérialiser et désérialiser la carte au format JSON. Initialement, nous pouvons créer une classe POJO et transmettre cette instance en tant que paramètre à la méthode put() de la classe Map et enfin ajouter cette instance de carte à la méthode accumulateAll () de JSONObject.

Syntaxe

public void accumulateAll(Map map)
Copier après la connexion

Dans l'exemple ci-dessous, nous pouvons convertir une Map en objet JSON.

Exemple

import java.util.*;
import net.sf.json.JSONObject;

public class ConvertMapToJSONObjectTest {
   public static void main(String[] args)throws Exception {
      JSONObject jsonObject = new JSONObject();
      Map<Integer, Employee> employees = new HashMap<Integer, Employee>();

      employees.put(1, new Employee("Adithya", "Jai", 30));
      employees.put(2, new Employee("Vamsi", "Krishna", 28));
      employees.put(3, new Employee("Chaitanya", "Sai", 30));

      jsonObject.accumulateAll(employees);
      System.out.println(jsonObject.toString(3)); // pretty print JSON
   }
   public static class Employee {
      private String firstName, lastName;
      private int age;
      public Employee(String firstName, String lastName, int age) {
         super();
         this.firstName = firstName;
         this.lastName = lastName;
         this.age = age;
      }
      public String getFirstName() {
         return firstName;
      }
      public String getLastName() {
         return lastName;
      }
      public int getAge() {
         return age;
      }
   }
}
Copier après la connexion

Sortie

{
 "1": {
 "firstName": "Adithya",
 "lastName": "Jai",
 "age": 30
 },
 "2": {
 "firstName": "Vamsi",
 "lastName": "Krishna",
 "age": 28
 },
 "3": {
 "firstName": "Chaitanya",
 "lastName": "Sai",
 "age": 30
 }
}
Copier après la connexion

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!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal