Heim > Java > javaLernprogramm > Wie übergebe ich mit Ajax mehrere Variablen ohne ein Hintergrundobjekt an einen Spring MVC-Controller?

Wie übergebe ich mit Ajax mehrere Variablen ohne ein Hintergrundobjekt an einen Spring MVC-Controller?

Mary-Kate Olsen
Freigeben: 2024-11-15 13:32:03
Original
450 Leute haben es durchsucht

How to Pass Multiple Variables to a Spring MVC Controller Using Ajax Without a Backing Object?

Übergabe mehrerer Variablen an einen Spring MVC-Controller mit Ajax

Wenn @RequestBody verwendet wird, um mehrere Variablen an einen Spring MVC-Controller zu übergeben, ist dies der Fall Es ist nicht notwendig, sie in einen Trägergegenstand einzuwickeln. Es gibt jedoch alternative Ansätze, die mehr Flexibilität bieten oder die Handhabung von JSON-Daten vereinfachen können.

Option 1: Verwenden Sie eine Karte

Wenn Sie keine dringenden Anforderungen haben- typisierten Parametern können Sie einen Map Objekt, um die JSON-Daten direkt zu empfangen. Dadurch können Sie über ihre Schlüssel auf die Werte zugreifen:

@RequestMapping(value = "/Test", method = RequestMethod.POST)
@ResponseBody
public boolean getTest(@RequestBody Map<String, String> json) {
   //json.get("str1") == "test one"
}
Nach dem Login kopieren

Dieser Ansatz erfordert kein benutzerdefiniertes Hintergrundobjekt und kann JSON-Daten mit beliebigen Schlüsseln verarbeiten.

Option 2: Verwenden Sie Jacksons ObjectNode

Für mehr Flexibilität können Sie an binden com.fasterxml.jackson.databind.node.ObjectNode, um auf die JSON-Daten als vollständigen JSON-Baum zuzugreifen:

@RequestMapping(value = "/Test", method = RequestMethod.POST)
@ResponseBody
public boolean getTest(@RequestBody ObjectNode json) {
   //json.get("str1").asText() == "test one"
}
Nach dem Login kopieren

Mit diesem Ansatz können Sie die JSON-Daten dynamisch verarbeiten und Werte basierend auf ihrem JSON-Pfad extrahieren.

Weitere Überlegungen:

  • Wenn Wenn stark typisierte Parameter erforderlich sind, können Sie ein benutzerdefiniertes POJO erstellen, um die erwartete JSON-Struktur darzustellen, und @RequestBody verwenden, um daran zu binden.
  • Für einfache Fälle verwenden Sie @RequestParam in der Abfragezeichenfolge oder @PathVariable in der Der Anforderungs-URI kann für die Übergabe einzelner Variablen praktischer sein.

Das obige ist der detaillierte Inhalt vonWie übergebe ich mit Ajax mehrere Variablen ohne ein Hintergrundobjekt an einen Spring MVC-Controller?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage