我有一个spring MVC项目,在控制器中我有以下方法:
@RequestMapping(value = IdentityServiceURIConstants.CREATE_NEW_USER, method = RequestMethod.POST)
public @ResponseBody User createUser(@RequestBody User user) {----}
此方法接收一个应该代表用户对象的JSON对象。
我的问题是用户对象中的字段与JSON对象中的字段不同。
示例:JSON中的名字为First_Name
,对象中的名字为firstName
,因此映射无效。
你是否知道如何解决这个问题,因为我既不能编辑用户对象也不能编辑JSONobject
答案 0 :(得分:2)
您可以使用 @JsonProperty 将您的java类属性命名为json键名,如下所示:
import com.fasterxml.jackson.annotation.JsonProperty;
public class User {
@JsonProperty("FIRST_NAME")
private String firstName;
@JsonProperty("LAST_NAME")
private String lastName;
// getters & Setters methods
}
你的json会是这样的:
{
"FIRST_NAME": "first name",
"SECOND_NAME": "second name"
}
答案 1 :(得分:0)
您可以编写DTO课程。
class UserDTO{
private User user;
// use getter setter to extract data from object
}