【发布时间】:2015-08-13 22:59:56
【问题描述】:
我在实体类中设置一些休眠注释时遇到问题。
我的问题是:我如何告诉 Hibernate,它应该将地址、名称和客户信息存储在一张表中。此表应具有以下列:ID、Given、Surname、Street、HouseNumber、Zip、City、Phone、Comment。目前 Hibernate 在 mysql 数据库中为每个实体生成一个表。因此有必要在每个实体类(客户、名称、地址)中定义一个@Id。但我想将所有信息保存在一张表中,客户只有一个 @Id。
我该如何解决这个问题?
您可以在下面找到 Customer、Name 和 Address 实体类的摘录:
@Entity
@Table(name = "customer")
@XmlRootElement
public class Customer {
@Id
@GeneratedValue
private int id;
@OneToOne
private Name name;
@OneToOne
private Address address;
private String phone;
private String comment;
public Customer() { }
}
@Entity
@XmlRootElement
public class Name {
private String given;
private String surname;
public Name() { }
}
@Entity
@XmlRootElement
public class Address {
private String street;
private String houseNumber;
private String zip;
private String city;
public Address() { }
}
【问题讨论】:
标签: java mysql hibernate jpa one-to-one