Maison  >  Article  >  Java  >  JSON en Java

JSON en Java

WBOY
WBOYoriginal
2024-08-30 16:02:12482parcourir

Le format d'échange de données, léger, basé sur du texte, indépendant du langage et facilement lu et écrit par les humains et les machines, est la notation d'objet JavaScript, également appelée JSON en Java. Cela représente deux types de structures appelées objets et tableaux où un objet est une collection de paires nom et valeur nulles ou supérieures à zéro et est une collection non ordonnée, et une séquence ordonnée de valeurs nulles ou supérieures à zéro est un tableau. Les valeurs possibles peuvent être des nombres, des chaînes, des booléens, des valeurs nulles, des objets et des tableaux.

PUBLICITÉ Cours populaire dans cette catégorie MAÎTRISÉE JAVA - Spécialisation | 78 séries de cours | 15 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Travailler avec JSON en Java

  • Considérez l'exemple ci-dessous pour représenter un objet en JSON pour décrire une personne.
  • Le prénom et le nom prennent les valeurs de chaîne dans l'objet ; l'âge prend la valeur des nombres dans l'objet ; adresse prend les valeurs des piqûres et des nombres pour représenter l'adresse de la personne dans l'objet ; le numéro de téléphone prend la valeur des tableaux dans l'objet.

Code :

{
"fName": "Shobha",
"lName": "Shivakumar",
"age1": 28,
"address1":
{
"streetAdd": "4, Ibbani street",
"city1": "Bangalore",
"state1": "Karnataka",
"pinCode": 560064
},
"phNumbers":
[
{
"type1": "home1",
"no": "9738128018"
},
{
"type2": "fax1",
"no1": "6366182095"
}
]
}
  • Le traitement de la notation d'objet JavaScript (JSON) en Java s'effectue via l'interface de programmation d'application Java à l'aide de la notation d'objet JavaScript, c'est-à-dire JSON.simple. La notation d'objet JavaScript JSON.simple est une bibliothèque en Java qui permet d'analyser des objets JavaScript. Notation, génération de notation d'objet JavaScript, transformation de notation d'objet JavaScript, interrogation de notation d'objet JavaScript, etc.
  • Pour fonctionner avec la bibliothèque simple JavaScript Object Notation, json-simple-1.1.jar doit être téléchargé et placé dans le CLASS PATH avant de compiler et d'exécuter les exemples de programmation JavaScript Object Notation.
  • L'objet JavaScript Object Notation et les structures du tableau utilisent les modules d'objet fournis par l'interface de programmation d'application simple JavaScript Object Notation.
  • Ces structures de notation d'objet JavaScript utilisent les types d'objet JSON et de tableau JSON pour être représentées en tant que modèles d'objet. L'objet JSON fournit une vue cartographique pour accéder à la collection de paires nom/valeur nulles ou supérieures à zéro du modèle. Il s'agit d'une collection non ordonnée et le tableau JSON fournit une vue Liste pour accéder à la séquence ordonnée de valeurs nulles ou supérieures à zéro dans un tableau à partir du modèle.

Exemples de JSON en Java

Vous trouverez ci-dessous des exemples de JSON en Java :

Exemple n°1

Programme Java pour démontrer l'encodage de la notation d'objet JavaScript (JSON) en Java.

Code :

//Importing JSON simple library
import org.json.simple.JSONObject;
//Creating a public class
public class JsonEncode {
//Calling the main method
public static void main(String[] args) {
//Creating an object of JSON class
JSONObject obje = new JSONObject();
//Entering the values using the created object
obje.put("bal", new Double(100.22));
obje.put("number", new Integer(200));
obje.put("check_vvip", new Boolean(true));
obje.put("name1", "sean");
//Printing the values through the created object
System.out.print(obje);
}
}

Dans l'exemple ci-dessus, un objet JSON est créé. Utilisation de l'objet JSON obje. Les valeurs telles que double, entier, booléen, chaîne, etc. sont imprimées en sortie.

Sortie :

JSON en Java

Exemple n°2

Programme Java pour démontrer l'utilisation de l'objet JSON et du tableau JSON.

Code :

//importing JSON simple libraries
import org.json.simple.JSONObject;
import org.json.simple.JSONArray;
import org.json.simple.parser.ParseException;
import org.json.simple.parser.JSONParser;
//creating a public class
public class JsonDecode{
//calling the main method
public static void main(String[] args) {
//creating an object of JSONparser
JSONParser par = new JSONParser();
//defining and assigning value to a string
String str = "[2,{\"3\":{\"4\":{\"5\":{\"6\":[7,{\"8\":9}]}}}}]";
try{
Object objc = par.parse(str);
//creating a JSON array
JSONArray array = (JSONArray)objc;
System.out.println("The array's second element is");
System.out.println(array.get(1));
System.out.println();
//creating a JSON object
JSONObject objc2 = (JSONObject)array.get(1);
System.out.println("Field \"2\"");
System.out.println(objc2.get("2"));
str = "{}";
objc = par.parse(str);
System.out.println(objc);
str = "[7,]";
objc = par.parse(str);
System.out.println(objc);
str = "[7,,2]";
objc = par.parse(str);
System.out.println(objc);
}catch(ParseException pr) {
System.out.println("The elements position is: " + pr.getPosition());
System.out.println(pr);
}
}
}

Dans l'exemple ci-dessus, un objet JSON de l'analyseur JSON par est créé, puis une valeur de chaîne est définie et attribuée. Un tableau JSON est créé pour obtenir différents éléments spécifiés dans la chaîne.

Sortie :

JSON en Java

Exemple #3

Programme Java pour écrire des données de notation d'objet JavaScript dans un fichier portant le nom JSON.json à l'aide de l'objet de notation d'objet JavaScript et du tableau de notation d'objet JavaScript.

Code :

//importing java simple libraries and JSON libraries
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.LinkedHashMap;
import java.util.Map;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
public class JSONWrite
{
public static void main(String[] args) throws FileNotFoundException
{
// Json object is created
JSONObject job = new JSONObject();
// Adding data using the created object
job.put("fName", "Shobha");
job.put("lName", "Shivakumar");
job.put("age1", 28);
// LinkedHashMap is created for address data
Map m1 = new LinkedHashMap(4);
m1.put("streetAdd", "4, Ibbani Street");
m1.put("city1", "Bangalore");
m1.put("state1", "Karnataka");
m1.put("pinCode", 560064);
// adding address to the created JSON object
job.put("address1", m1);
// JSONArray is created to add the phone numbers
JSONArray jab = new JSONArray();
m1 = new LinkedHashMap(2);
m1.put("type1", "home1");
m1.put("no", "9738128018");
// adding map to list
jab.add(m1);
m1 = new LinkedHashMap(2);
m1.put("type2", "fax1");
m1.put("no1", "6366182095");
// map is added to the list
jab.add(m1);
// adding phone numbers to the created JSON object
job.put("phoneNos", jab);
// the JSON data is written into the file
PrintWriter pwt = new PrintWriter("JSON.json");
pwt.write(job.toJSONString());
pwt.flush();
pwt.close();
}
}

Dans l'exemple ci-dessus, une tâche d'objet JSON est créée. Le prénom, le nom et l'âge sont écrits dans le fichier JSON.json à l'aide de l'objet de travail. Une carte de hachage liée est créée pour ajouter les détails de l'adresse, qui sont ensuite écrits dans le fichier à l'aide de l'objet de travail JSON. L'objet tableau JSON est créé pour ajouter les numéros de téléphone, et la carte de hachage liée est utilisée pour créer différents types de numéros de téléphone ; enfin, l'objet job JSON est utilisé pour écrire ces numéros de téléphone dans le fichier. En fin de compte, à l'aide d'un rédacteur d'impression, le contenu est écrit dans le fichier.

Sortie :

La sortie du programme ci-dessus est obtenue lors de l'accès au fichier JSON.json pour voir le contenu du fichier.

Note: Since JSON is an unordered collection of name or value pairs, there is no order preserved in the output shown below. JSON en Java

Example #4

Java program to read the contents of the file JSON. JSON demonstrates the use of JavaScript Object Notation object parser, JavaScript Object Notation object, and JavaScript Object Notation object array.

Code:

//importing JSON simple libraries
import java.io.FileReader;
import java.util.Iterator;
import java.util.Map;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.*;
public class JSONRead
{
public static void main(String[] args) throws Exception
{
// The file JSON.json is parsed
Object objc = new JSONParser().parse(new FileReader("JSON.json"));
// objc is convereted to JSON object
JSONObject job = (JSONObject) objc;
// obtaining the fname and lname
String fName = (String) job.get("fName");
String lName = (String) job.get("lName");
System.out.println(fName);
System.out.println(lName);
// age is obtained
long age1 = (long) job.get("age1");
System.out.println(age1);
// address is obtained
Map address1 = ((Map)job.get("address1"));
// iterating through the address
Iterator<Map.Entry> itr = address.entrySet().iterator();
while (itr.hasNext()) {
Map.Entry pair1 = itr1.next();
System.out.println(pair1.getKey() + " : " + pair1.getValue());
}
// phone numbers are obtained
JSONArray jab = (JSONArray) job.get("phoneNos");
// iterating phoneNumbers
Iterator itr1 = jab.iterator();
while (itr1.hasNext())
{
itr = ((Map) itr1.next()).entrySet().iterator();
while (itr.hasNext()) {
Map.Entry pair1 = itr.next();
System.out.println(pair1.getKey() + " : " + pair1.getValue());
}
}
}
}

In the above example, the file JSON.json is parsed by creating an object objc which is then converted to a JSON object job. First name, last name, age, address, and phone numbers are read from the JSON.json file through iterations and printed as the output.

Output:

The output of the above program after reading the contents from the JSON.json file is shown in the snapshot below:

JSON en Java

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!

Déclaration:
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
Article précédent:Répertoires JavaArticle suivant:Répertoires Java