首頁  >  文章  >  Java  >  如何使用 Spring MVC 和 jQuery 雙向傳輸 JSON 資料?

如何使用 Spring MVC 和 jQuery 雙向傳輸 JSON 資料?

Patricia Arquette
Patricia Arquette原創
2024-11-21 00:44:18960瀏覽

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

使用JQuery、Spring MVC 和JSON 解決雙向資料傳輸

儘管使用@ResponseBody 成功實現了Java 到JSON 資料傳輸,但實現其反向路徑仍然很重要困難。難以捉摸。本文深入探討了使用 @RequestBody 將 JSON 序列化回 Java 物件的解決方案。

成功的先決條件

為了確保無縫體驗,請確保滿足以下條件:

  • 正確的Jackson設定:驗證MapJacksonHttpMessageConverter是否已註冊,通常透過來實現XML 中或Java中的 @EnableWebMvc。

綜合範例

為了說明解決方案,請考慮以下範例:

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>

json-servlet.xml:

<beans>
  <import resource="classpath:mvc-context.xml" />
</beans>

mvc-context.xml:

<beans>
  <mvc:annotation-driven />
  <context:component-scan base-package="test.json" />
</beans>
mvc-context.xml:

mvc-context.xml:

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

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

}

mvc-context.xml:

mvc-context.xml:
public class Request {
  private int left;
  private int right;
  ...
}

mvc-context.xml:

TestController(控制器類別):
public class Result {
  private int addition;
  private int subtraction;
  private int multiplication;
  ...
}

請求(POST 請求的POJO):
  • 結果(序列化響應的POJO):

測試解決方案
{"addition":20,"subtraction":6,"multiplication":91}

執行指令mvn jetty:run 並發送以下POST 要求:

URL:http:/ /localhost:8080/test/mathMIME類型:application/json貼文正文:{ "left": 13, "right" : 7 }您應該收到的回應:這示範了使用@RequestBody 在JSON 和Java 之間進行雙向資料傳輸。

以上是如何使用 Spring MVC 和 jQuery 雙向傳輸 JSON 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn