首页 > Java > java教程 > 如何集成 JQuery、Spring MVC 的 @RequestBody 和 JSON 进行双向序列化?

如何集成 JQuery、Spring MVC 的 @RequestBody 和 JSON 进行双向序列化?

Barbara Streisand
发布: 2024-12-05 20:32:10
原创
618 人浏览过

How to Integrate JQuery, Spring MVC's @RequestBody, and JSON for Bidirectional Serialization?

JQuery、Spring MVC @RequestBody 和 JSON – 让它们一起工作

虽然将 Java 对象序列化为 JSON 以供 JQuery 使用可能很简单,但相反的路径 - 解析JSON 并将其转换为 Java 对象——可能会带来挑战。本文将指导您完成实现双向序列化所需的步骤。

问题:使用 @RequestBody 将 JSON 转换为 Java

使用 Spring MVC @RequestBody 将 JSON 反序列化为 Java 对象,必须注册 MappingJacksonHttpMessageConverter。虽然这可以手动完成,但最简单的方法是使用 XML 或 Java 中的 @EnableWebMvc。

工作示例

考虑以下示例,它展示了双向 JSON 序列化的完整解决方案:

Maven POM

<!-- Spring MVC -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>3.0.5.RELEASE</version>
</dependency>
<!-- Jackson -->
<dependency>
    <groupId>org.codehaus.jackson</groupId>
    <artifactId>jackson-mapper-asl</artifactId>
    <version>1.4.2</version>
</dependency>
登录后复制

Servlet映射

<servlet-mapping>
    <servlet-name>json</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

#### Spring Bean Configuration
登录后复制

<import resource="classpath:mvc-context.xml" /></p>
<p></p>
<pre class="brush:php;toolbar:false">
#### `mvc-context.xml`
登录后复制

<mvc:annotation-driven />
<context:component-scan base-package="test.json" />
登录后复制

#### Controller
登录后复制

@Controller
@RequestMapping("/test")
公共类 TestController {

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

}

#### Domain Objects
登录后复制

公开课请求 {

// ... fields and getters/setters ...
登录后复制
登录后复制

}

公开课结果 {

// ... fields and getters/setters ...
登录后复制
登录后复制

}

#### Testing the Setup

Using the Poster Firefox plugin, send a POST request to the following URL:
登录后复制

网址: http://localhost:8080/test/math
mime 类型:application/json
帖子正文:{ "left": 13 , "right" : 7 }

#### Expected Response
登录后复制

{"加法":20,"减法":6,"乘法":91}

以上是如何集成 JQuery、Spring MVC 的 @RequestBody 和 JSON 进行双向序列化?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板