【发布时间】:2013-10-19 09:18:04
【问题描述】:
使用接受 JSON 请求正文的 Spring MVC 开发 REST Web 服务。 并进一步处理收到的消息。 我正在使用以下内容: Eclipse、Tomcat、Spring 3.0.1、Jackson lib、用于测试 Web 服务的 Curl
`curl -i -H "Content-Type: application/json" -H "Accept: application/json" -X POST -d '{"fname":"my_firstname" , "lname":"my_lastname"}' http://localhost:8080/SpringMVC/restful`
返回
"Saved person: null null"
我的控制器类
import com.samples.spring.Person;
@Controller
public class RestController {
@RequestMapping(value="{person}", method = RequestMethod.POST)
@ResponseBody
public String savePerson(Person person) {
// save person in database
return "Saved person: " + person.getFname() +" "+ person.getLname();
}
我的人物类
package com.samples.spring;
public class Person {
public String fname;
public String lname;
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public String getLname() {
return lname;
}
public void setLname(String lname) {
this.lname = lname;
}
}
【问题讨论】:
-
已解决。做了如下两件事:1.)添加了@RequestBody 2.)将Curl的JSON参数从 -d '{"fname":"my_firstname" , "lname":"my_lastname"}' ---- -d "{ """fname""":"""my_firstname""" , """lname""":"""my_lastname"""}"。谁能解释一下???
标签: java json spring spring-mvc curl