在使用 Spring MVC 的基于 Java 的 Web 应用程序中,双向寻求 JSON 和 Java 对象之间的数据序列化。 Java 到 JSON 路径运行良好,但反向路径(通过 @RequestBody 将 JSON 输入反序列化为 Java 对象)会遇到问题。
要启用双向 JSON-Java 序列化,在 Spring MVC 配置中注册 MappingJacksonHttpMessageConverter 至关重要。这可以通过两种方式实现:
注册消息转换器后,问题描述中显示的代码应该按预期运行。
为了演示工作示例,下面提供了一个简单的 Web 应用程序:
// ... code @Controller @RequestMapping("/test") public class TestController { @RequestMapping(method = RequestMethod.POST, value = "math") @ResponseBody public Result math(@RequestBody final Request request) { // ... code } } // ... code
<beans xmlns="http://www.springframework.org/schema/beans"...> <mvc:annotation-driven /> <context:component-scan base-package="test.json" /> </beans>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"...> <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> </web-app>
要测试应用程序:
以上是如何使用 Spring MVC 的 @RequestBody 启用双向 JSON-Java 序列化?的详细内容。更多信息请关注PHP中文网其他相关文章!