Heim > Java > javaLernprogramm > Wie übertrage ich JSON-Daten bidirektional mit Spring MVC und jQuery?

Wie übertrage ich JSON-Daten bidirektional mit Spring MVC und jQuery?

Patricia Arquette
Freigeben: 2024-11-21 00:44:18
Original
1001 Leute haben es durchsucht

How to Bidirectionally Transfer JSON Data with Spring MVC and jQuery?

Bewältigung der bidirektionalen Datenübertragung mit JQuery, Spring MVC und JSON

Trotz des Erfolgs bei der Datenübertragung von Java zu JSON mithilfe von @ResponseBody wurde der umgekehrte Weg implementiert schwer fassbar. Dieser Artikel befasst sich mit der Lösung, JSON mithilfe von @RequestBody wieder in ein Java-Objekt zu serialisieren.

Voraussetzungen für den Erfolg

Um ein nahtloses Erlebnis zu gewährleisten, stellen Sie Folgendes sicher:

  • Korrekte Jackson-Konfiguration: Stellen Sie sicher, dass MappingJacksonHttpMessageConverter registriert ist, was normalerweise durch erreicht wird. in XML oder @EnableWebMvc in Java.

Ein umfassendes Beispiel

Um die Lösung zu veranschaulichen, betrachten Sie das folgende Beispiel:

web.xml:

<servlet>
  <servlet-name>json</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
  <servlet-name>json</servlet-name>
  <url-pattern>/*</url-pattern>
</servlet-mapping>
Nach dem Login kopieren

json-servlet.xml:

<beans>
  <import resource="classpath:mvc-context.xml" />
</beans>
Nach dem Login kopieren

mvc-context.xml:

<beans>
  <mvc:annotation-driven />
  <context:component-scan base-package="test.json" />
</beans>
Nach dem Login kopieren

TestController (Controller-Klasse):

@Controller
@RequestMapping("/test")
public class TestController {

  @RequestMapping(method = RequestMethod.POST, value = "math")
  @ResponseBody
  public Result math(@RequestBody final Request request) {
    ...
  }

}
Nach dem Login kopieren

Anfrage (POJO für POST-Anfragen):

public class Request {
  private int left;
  private int right;
  ...
}
Nach dem Login kopieren

Ergebnis (POJO für serialisierte Antworten):

public class Result {
  private int addition;
  private int subtraction;
  private int multiplication;
  ...
}
Nach dem Login kopieren

Testen der Lösung

Führen Sie den Befehl mvn jetty:run aus und senden Sie die folgende POST-Anfrage:

  • URL: http://localhost:8080/test/math
  • MIME-Typ: application/json
  • Post Body: { "left": 13, "right" : 7 }

Die Antwort, die Sie erhalten sollten:

{"addition":20,"subtraction":6,"multiplication":91}
Nach dem Login kopieren

Dies demonstriert die bidirektionale Datenübertragung zwischen JSON und Java mithilfe von @RequestBody.

Das obige ist der detaillierte Inhalt vonWie übertrage ich JSON-Daten bidirektional mit Spring MVC und jQuery?. 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