2
我使用Jersey來提供REST API。 我寫控制器,它映射的請求實體:Java將json映射到兩個對象
@POST
@Path("register")
@Consumes("application/json")
@Produces("application/json")
public Response UserRegistration(User UserData)
{
}
它工作正常的簡單的JSON,如:
{
"email":"[email protected]",
"name":"Name",
"surname":"surname"
}
和實體:
public class User {
public User() {}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id",unique = true)
private int id;
@Column(name = "name")
private String name;
@Column(name = "surname")
private String surname;
@Column(name = "email", unique = true)
private String email;
//getters
// setters
}
我該如何映射JSON陣列狀:
{
"email":"[email protected]",
"name":"Name",
"surname":"surname"
"reqData":{
"ip":44.44.44.44}
}
要兩個實體? 一是實體:用戶(如上圖所示)和實體reqData:
public class RegistrationData {
public RegistrationData(){};
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id", unique = true)
private int id;
@Column(name = "ip")
private int ip;
我當然一一對應的關係,但在這裏並不重要(我認爲)。 我希望我的問題可以理解。 感謝您的幫助。