POST 到 spring @RestController 中没有设置属性
No properties set in POST to spring @RestController
我有 spring 个标有 RestController
的控制器。如果我使用 Json 对象执行 POST,则不会填充模型 class Company
的属性,例如name
属性 是 null
.
如果我在 save()
方法中请求请求主体,我会得到一个 Json 字符串,其名称为 属性,这意味着我确定 json POST 请求的正文被传输。
我需要做些什么才能使 spring 将 Json 字符串反序列化为 save()
方法的 company
参数吗?
控制器:
@RestController
@RequestMapping("/company")
public class CompanyResource {
@Resource
private CompanyService companyService;
@RequestMapping(method = RequestMethod.POST)
public Company save(Company company) {
return companyService.save (company);
}
}
公司型号class:
@实体
public class Company {
@Id
private long id;
private String name;
// public setters and getters
}
您需要@RequestBody注解:
public Company save(@RequestBody Company company) {
return companyService.save (company);
}
我有 spring 个标有 RestController
的控制器。如果我使用 Json 对象执行 POST,则不会填充模型 class Company
的属性,例如name
属性 是 null
.
如果我在 save()
方法中请求请求主体,我会得到一个 Json 字符串,其名称为 属性,这意味着我确定 json POST 请求的正文被传输。
我需要做些什么才能使 spring 将 Json 字符串反序列化为 save()
方法的 company
参数吗?
控制器:
@RestController
@RequestMapping("/company")
public class CompanyResource {
@Resource
private CompanyService companyService;
@RequestMapping(method = RequestMethod.POST)
public Company save(Company company) {
return companyService.save (company);
}
}
公司型号class: @实体
public class Company {
@Id
private long id;
private String name;
// public setters and getters
}
您需要@RequestBody注解:
public Company save(@RequestBody Company company) {
return companyService.save (company);
}