繁体   English   中英

如何在Spring Controller中将JSON转换为Java对象,反之亦然?

[英]How to convert a JSON to java object and vice versa in spring controller?

我想创建一个简单的Spring项目,该项目将用作RESTful服务。

我想从前端发送JSON,并想使用@RequestBody将其转换为Java对象。 在后端修改对象后,我需要将该对象转换回JSON并发送到前端。

我该如何实现?

您可以使用Jackson库。 可以在这里找到一个示例: http : //www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/

只需通过@RequestBody@ResponseBody批注即可获得Spring中的序列化(POJO-> JSON)和反序列化( @ResponseBody > POJO)。

您只需要定义一个Java类,即可在服务器端表示/映射您的JSON对象。

例:

输入JSON

{id: 123, name: "your name", description: ""}

Java类

public class MyClass {
    private int id;
    private String name;
    private String description;
}

控制器中的方法

public void postJson(@RequestBody MyClass o){
    // do something...
}

public @ResponseBody MyClass getJson(){
    // do something...
}

注意我省略了@RequestMapping设置。

您将必须为POST请求提供csrf令牌。 相反,您可以尝试此。

在Spring MVC中通过angularjs $ http.get发送HashMap

它只需要额外的@RequestParams就可以了,但是更好的是,您不仅可以发送相应的对象,还可以发送其他信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM