【发布时间】:2015-02-03 02:32:17
【问题描述】:
我正在尝试使用 Jackson 将我的 JPA 实体(反)序列化到 JSON 或从 JSON 序列化,以便通过我们的 API 发布实体状态。 FWIW 我使用休眠作为 JPA 提供程序。
我遇到的问题可以用一个简单的一对多的 Person to Address 示例来说明,如下所示:
@Entity
@Table(name="Person")
public class Person implements Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String name;
// getters & setters
}
@Entity
@Table(name="Address")
public class Address implements Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private String addressStr;
@ManyToOne
@JoinColumn(name="personId")
private Person person;
// getters & setters
}
现在,我希望能够接受这样的 JSON 来创建地址请求:
{
"personId": 1,
"addressStr": "123 Somestreet. Fooville, AK. 11111"
}
并使用 ObjectMapper 创建我的 Address 实例并将其持久化。但是,我不知道有什么方法可以同时拥有与实体的映射关系和外键的设置器。
非常感谢任何想法或指导!
【问题讨论】: