Maison > Java > javaDidacticiel > Comment puis-je désérialiser avec succès JSON en objets Java à l'aide de @RequestBody de Spring MVC ?

Comment puis-je désérialiser avec succès JSON en objets Java à l'aide de @RequestBody de Spring MVC ?

Susan Sarandon
Libérer: 2024-12-03 01:52:09
original
991 Les gens l'ont consulté

How Can I Successfully Deserialize JSON to Java Objects Using Spring MVC's @RequestBody?

Spring MVC @RequestBody et gestion JSON

Contexte : sérialisation JSON vers Java

La question présente un scénario dans lequel la sérialisation JSON vers des objets Java est réussie implémenté à l'aide de l'annotation @ResponseBody. Cela permet à la conversion d'objets Java en chaînes JSON d'être envoyés en tant que réponses dans le chemin sortant.

Chemin inverse : désérialisation d'objets Java à partir de JSON

Le principal défi rencontré est la conversion du JSON entrant. chaînes aux objets Java, ce que l'on souhaite réaliser à l'aide de l'annotation @RequestBody. Comme indiqué dans la question, les tentatives de définition d'une méthode avec @RequestBody comme paramètre ont abouti à ce que la méthode ne soit jamais appelée.

La solution : convertisseurs de messages

La solution à ce problème réside dans l'enregistrement le convertisseur de message approprié, en particulier MappingJacksonHttpMessageConverter. En enregistrant ce convertisseur, Spring MVC est équipé pour gérer les corps de requête JSON. Ceci peut être réalisé via la configuration XML à l'aide du tag ou via la configuration Java à l'aide de l'annotation @EnableWebMvc.

Exemple de travail

L'exemple de code fourni montre comment enregistrer MappingJacksonHttpMessageConverter et le définir comme convertisseur de messages responsable du traitement des requêtes JSON. Le contrôleur définit une méthode qui accepte un corps de requête JSON et renvoie une réponse JSON sérialisée. En exécutant cet exemple, vous pouvez tester avec succès la sérialisation et la désérialisation JSON bidirectionnelles entre un client et le backend 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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal