我想创建一个简单的Spring项目,作为RESTful服务。
我想从前端发送JSON,并希望使用@RequestBody
将其转换为Java对象。在后端修改对象后,我需要将该对象转换回JSON并发送到前端。
我怎样才能做到这一点?
答案 0 :(得分:2)
您可以使用杰克逊图书馆。可以在此处找到一个示例:http://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/
答案 1 :(得分:2)
Spring中的序列化(POJO - > JSON)和反序列化(JSON - > POJO)只需通过@RequestBody
和@ResponseBody
注释即可获得。
您只需要在服务器端定义一个表示/映射JSON对象的Java类。
示例:
{id: 123, name: "your name", description: ""}
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
次设置。
答案 2 :(得分:0)
您必须为POST请求提供csrf令牌。相反,你可以试试这个。
sending HashMap by angularjs $http.get in spring mvc
它只是额外的@RequestParams,但更好的一面,你也可以发送更多的信息,而不仅仅是相应的对象。