Passer plusieurs variables à un contrôleur Spring MVC à l'aide d'Ajax
Lorsque vous utilisez @RequestBody pour transmettre plusieurs variables à un contrôleur Spring MVC, il est il n'est pas nécessaire de les envelopper dans un objet de support. Cependant, il existe des approches alternatives qui peuvent offrir plus de flexibilité ou simplifier la gestion des données JSON.
Option 1 : Utilisez une carte
Si vous n'avez pas besoin de fortement- paramètres saisis, vous pouvez utiliser un Map
@RequestMapping(value = "/Test", method = RequestMethod.POST) @ResponseBody public boolean getTest(@RequestBody Map<String, String> json) { //json.get("str1") == "test one" }
Cette approche ne nécessite pas d'objet de support personnalisé et peut gérer les données JSON avec des clés arbitraires.
Option 2 : Utilisez l'ObjectNode de Jackson
Pour plus de flexibilité, vous pouvez vous lier à com.fasterxml.jackson.databind.node.ObjectNode pour accéder aux données JSON sous la forme d'une arborescence JSON complète :
@RequestMapping(value = "/Test", method = RequestMethod.POST) @ResponseBody public boolean getTest(@RequestBody ObjectNode json) { //json.get("str1").asText() == "test one" }
Cette approche vous permet de traiter dynamiquement les données JSON et d'extraire des valeurs en fonction de leur chemin JSON.
Autres considérations :
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!