Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Formats de Données : JSON et XML | Notions de Base du Développement Backend
Spring Boot Backend

bookFormats de Données : JSON et XML

Dans les chapitres précédents, nous avons examiné le fonctionnement du HTTP et la manière dont il transfère les données. Dans ce chapitre, nous allons étudier les formats tels que JSON et XML, qui sont des formats pouvant être utilisés pour transmettre des données dans le corps d'une réponse du serveur ou lors de l'envoi d'une requête au serveur.

Qu'est-ce que JSON ?

JSON est utilisé pour la transmission de données sous un format clé-valeur, ce qui le rend très pratique pour accéder aux données et les convertir directement en objet.

Ce format prend en charge les tableaux, les objets, ainsi que les valeurs primitives telles que les chaînes de caractères, les nombres et les valeurs booléennes.

Formats de données en JSON

Pour les tableaux en JSON, la syntaxe suivante peut être utilisée :

{
  "courses": ["Math", "Science"]
}

Toutes les informations sont placées entre accolades et le nom de la clé (par exemple, "courses") est indiqué entre guillemets. La valeur associée à cette clé, dans ce cas, est un tableau (["Math", "Science"]), qui est entouré de crochets pour indiquer qu'il s'agit d'un tableau.

Si l’on souhaite transmettre des types primitifs simples (tels que des nombres, des chaînes de caractères ou des valeurs booléennes) en JSON, cela peut se faire ainsi :

{
  "name": "John Doe",
  "age": 30,
  "isStudent": false
}

Il est possible de transmettre des objets au format JSON. Un objet est représenté par un ensemble de paires clé-valeur entourées d’accolades.

{
  "address": {
    "street": "123 Main St",
    "city": "Anytown"
  }
}

Chaque clé est une chaîne de caractères et est suivie d’un deux-points, avec la valeur correspondante, qui peut être un autre objet, un tableau, un type primitif ou null.

Transmission de JSON via HTTP

Lors de la transmission de données au format JSON via HTTP, les requêtes et les réponses utilisent l’en-tête Content-Type défini sur application/json. Dans une requête, les données sont placées dans le corps de la requête, tandis que dans une réponse, les données sont placées dans le corps de la réponse.

Structure de la requête :

POST /api/users HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "name": "John Doe",
  "age": 30
}

Structure de la réponse :

HTTP/1.1 200 OK
Content-Type: application/json

{
  "status": "success",
  "data": {
     "userId": 12345
   }
}

Sérialisation et désérialisation JSON

La sérialisation convertit un objet ou une structure de données en un format adapté à la transmission réseau ou au stockage de fichiers.

La désérialisation est le processus inverse, qui convertit les données du format JSON en un objet ou une structure de données pour une utilisation dans le code.

Dépendance de la vidéo pour intégrer la sérialisation et la désérialisation de JSON. Ceci est nécessaire afin de pouvoir utiliser la classe ObjectMapper.

Il faut insérer cette dépendance dans le fichier pom.xml et le mettre à jour.

Comment utiliser le dépôt Maven

Qu'est-ce que XML ?

XML représente des données à l'aide de balises formant une structure hiérarchique. Chaque élément possède des balises d'ouverture et de fermeture, et peut également inclure des attributs.

Syntaxe XML

<person>
    <name>John Doe</name>
    <age>30</age>
    <isStudent>false</isStudent>
    <courses>
        <course>Math</course>
        <course>Science</course>
    </courses>
    <address>
        <street>123 Main St</street>
        <city>Anytown</city>
    </address>
</person>

Comme vous pouvez le constater, tout ici est construit à partir de balises. Listes et objets ne sont pas fondamentalement différents, mais si l’on souhaite représenter une valeur simple, le nom de la balise sert de clé et la valeur à l’intérieur des balises constitue la valeur.

Transmission XML via HTTP :

Pour la transmission de données XML, l’en-tête Content-Type peut être défini sur application/xml ou text/xml. Les données sont également placées dans le corps de la requête ou de la réponse.

Exemple de requête :

POST /api/users HTTP/1.1
Host: example.com
Content-Type: application/xml

<user>
    <name>John Doe</name>
    <age>30</age>
</user>

Exemple de réponse :

HTTP/1.1 200 OK
Content-Type: application/xml

<response>
  <status>success</status>
  <data>
    <userId>12345</userId>
  </data>
</response>

Sérialisation et désérialisation XML

Dépendance de la vidéo pour intégrer la sérialisation et la désérialisation du XML. Ceci est nécessaire afin de pouvoir utiliser la classe XmlMapper.

Il est nécessaire d'insérer cette dépendance dans le fichier pom.xml et de le mettre à jour.

Résumé

JSON est le choix privilégié pour les applications web modernes en raison de sa légèreté et de sa simplicité. Bien que XML soit moins pratique dans de nombreux scénarios web, il peut être utile dans les cas nécessitant une structure de données complexe et des schémas stricts.

1. Quel format est utilisé pour représenter les données sous forme de paires key-value et est plus léger et pratique pour la transmission sur le réseau ?

2. Lequel des extraits de code suivants est un JSON valide ?

question mark

Quel format est utilisé pour représenter les données sous forme de paires key-value et est plus léger et pratique pour la transmission sur le réseau ?

Select the correct answer

question mark

Lequel des extraits de code suivants est un JSON valide ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

What are the main differences between JSON and XML?

Can you explain when to use JSON versus XML?

How does serialization and deserialization work in practice?

Awesome!

Completion rate improved to 3.45

bookFormats de Données : JSON et XML

Glissez pour afficher le menu

Dans les chapitres précédents, nous avons examiné le fonctionnement du HTTP et la manière dont il transfère les données. Dans ce chapitre, nous allons étudier les formats tels que JSON et XML, qui sont des formats pouvant être utilisés pour transmettre des données dans le corps d'une réponse du serveur ou lors de l'envoi d'une requête au serveur.

Qu'est-ce que JSON ?

JSON est utilisé pour la transmission de données sous un format clé-valeur, ce qui le rend très pratique pour accéder aux données et les convertir directement en objet.

Ce format prend en charge les tableaux, les objets, ainsi que les valeurs primitives telles que les chaînes de caractères, les nombres et les valeurs booléennes.

Formats de données en JSON

Pour les tableaux en JSON, la syntaxe suivante peut être utilisée :

{
  "courses": ["Math", "Science"]
}

Toutes les informations sont placées entre accolades et le nom de la clé (par exemple, "courses") est indiqué entre guillemets. La valeur associée à cette clé, dans ce cas, est un tableau (["Math", "Science"]), qui est entouré de crochets pour indiquer qu'il s'agit d'un tableau.

Si l’on souhaite transmettre des types primitifs simples (tels que des nombres, des chaînes de caractères ou des valeurs booléennes) en JSON, cela peut se faire ainsi :

{
  "name": "John Doe",
  "age": 30,
  "isStudent": false
}

Il est possible de transmettre des objets au format JSON. Un objet est représenté par un ensemble de paires clé-valeur entourées d’accolades.

{
  "address": {
    "street": "123 Main St",
    "city": "Anytown"
  }
}

Chaque clé est une chaîne de caractères et est suivie d’un deux-points, avec la valeur correspondante, qui peut être un autre objet, un tableau, un type primitif ou null.

Transmission de JSON via HTTP

Lors de la transmission de données au format JSON via HTTP, les requêtes et les réponses utilisent l’en-tête Content-Type défini sur application/json. Dans une requête, les données sont placées dans le corps de la requête, tandis que dans une réponse, les données sont placées dans le corps de la réponse.

Structure de la requête :

POST /api/users HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "name": "John Doe",
  "age": 30
}

Structure de la réponse :

HTTP/1.1 200 OK
Content-Type: application/json

{
  "status": "success",
  "data": {
     "userId": 12345
   }
}

Sérialisation et désérialisation JSON

La sérialisation convertit un objet ou une structure de données en un format adapté à la transmission réseau ou au stockage de fichiers.

La désérialisation est le processus inverse, qui convertit les données du format JSON en un objet ou une structure de données pour une utilisation dans le code.

Dépendance de la vidéo pour intégrer la sérialisation et la désérialisation de JSON. Ceci est nécessaire afin de pouvoir utiliser la classe ObjectMapper.

Il faut insérer cette dépendance dans le fichier pom.xml et le mettre à jour.

Comment utiliser le dépôt Maven

Qu'est-ce que XML ?

XML représente des données à l'aide de balises formant une structure hiérarchique. Chaque élément possède des balises d'ouverture et de fermeture, et peut également inclure des attributs.

Syntaxe XML

<person>
    <name>John Doe</name>
    <age>30</age>
    <isStudent>false</isStudent>
    <courses>
        <course>Math</course>
        <course>Science</course>
    </courses>
    <address>
        <street>123 Main St</street>
        <city>Anytown</city>
    </address>
</person>

Comme vous pouvez le constater, tout ici est construit à partir de balises. Listes et objets ne sont pas fondamentalement différents, mais si l’on souhaite représenter une valeur simple, le nom de la balise sert de clé et la valeur à l’intérieur des balises constitue la valeur.

Transmission XML via HTTP :

Pour la transmission de données XML, l’en-tête Content-Type peut être défini sur application/xml ou text/xml. Les données sont également placées dans le corps de la requête ou de la réponse.

Exemple de requête :

POST /api/users HTTP/1.1
Host: example.com
Content-Type: application/xml

<user>
    <name>John Doe</name>
    <age>30</age>
</user>

Exemple de réponse :

HTTP/1.1 200 OK
Content-Type: application/xml

<response>
  <status>success</status>
  <data>
    <userId>12345</userId>
  </data>
</response>

Sérialisation et désérialisation XML

Dépendance de la vidéo pour intégrer la sérialisation et la désérialisation du XML. Ceci est nécessaire afin de pouvoir utiliser la classe XmlMapper.

Il est nécessaire d'insérer cette dépendance dans le fichier pom.xml et de le mettre à jour.

Résumé

JSON est le choix privilégié pour les applications web modernes en raison de sa légèreté et de sa simplicité. Bien que XML soit moins pratique dans de nombreux scénarios web, il peut être utile dans les cas nécessitant une structure de données complexe et des schémas stricts.

1. Quel format est utilisé pour représenter les données sous forme de paires key-value et est plus léger et pratique pour la transmission sur le réseau ?

2. Lequel des extraits de code suivants est un JSON valide ?

question mark

Quel format est utilisé pour représenter les données sous forme de paires key-value et est plus léger et pratique pour la transmission sur le réseau ?

Select the correct answer

question mark

Lequel des extraits de code suivants est un JSON valide ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 5
some-alt