@ResponseBody を使用した Java から JSON へのデータ転送の実現には成功しましたが、その逆パスの実装は依然として困難です。とらえどころのない。この記事では、@RequestBody を使用して JSON をシリアル化して Java オブジェクトに戻すソリューションについて詳しく説明します。
シームレスなエクスペリエンスを確保するには、次のことを確認してください。
ソリューションを説明するために、次の例を考えてみましょう。以下:
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>
TestController (コントローラークラス):
@Controller @RequestMapping("/test") public class TestController { @RequestMapping(method = RequestMethod.POST, value = "math") @ResponseBody public Result math(@RequestBody final Request request) { ... } }
Request (POST リクエストの場合は POJO):
public class Request { private int left; private int right; ... }
Result (シリアル化された応答の場合は POJO) :
public class Result { private int addition; private int subtraction; private int multiplication; ... }
コマンド mvnjetty:run を実行し、次の POST リクエストを送信します。
受信する応答:
{"addition":20,"subtraction":6,"multiplication":91}
これは、@RequestBody を使用した JSON と Java 間の双方向データ転送を示しています。
以上がSpring MVC と jQuery を使用して JSON データを双方向に転送するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。