没有在POST中设置属性以弹出@RestController

时间:2016-01-08 13:37:33

标签: json spring spring-restcontroller

我的弹簧控制器标有RestController。如果我使用Json对象执行POST,则不会填充模型类Company的属性,例如name属性为null

如果我在save()方法中请求请求主体,我会得到一个具有name属性的Json字符串,这意味着我确定POST请求的json主体被传输。

我是否需要做些什么才能将Json字符串反序列化为company方法的save()参数?

控制器:

@RestController
@RequestMapping("/company")
public class CompanyResource {

    @Resource
    private CompanyService companyService;

    @RequestMapping(method = RequestMethod.POST)
    public Company save(Company company) {
        return companyService.save (company);
    }

}

公司型号类: @Entity

public class Company {

    @Id
    private long id;

    private String name;

    // public setters and getters
}

1 个答案:

答案 0 :(得分:2)

您需要@RequestBody注释:

public Company save(@RequestBody Company company) {
    return companyService.save (company);
}