0
我是Hibernate/Spring的新手,尝试映射旧数据库,同时创建一个小的Web实用程序,这应该可以为同事减轻一些工作量。由于我已经映射了实体并可以访问底层数据,因此我还有一些问题。为了使长话短说,我有两个entites的,客户Hibernate:映射@OneToMany/@ManyToOne问题(不使用实体主键)
@Entity
public class Customer implements Serializable{
@Id
@Column(name = "RecordID")
private Integer id;
@Column(name = "CUSTOMERNAME1")
private String name;
@OneToMany
@JoinColumn(name="CUSTOMER1", referencedColumnName="CUSTOMERNAME1")
private List<Contract> contracts;
}
和合同:
@Entity
public class Contract implements Serializable {
@Id
@Column(name = "RECORDID") //RecordID
private Integer id;
@Column(name = "CONTRACTID1") //ContractID1
private String contractId;
@Column(name = "CUSTOMER1") //Customer1
private String customerName;
//@ManyToOne
//private Customer customer; // how can I write the reverse mapping?
}
从客户合同的映射工作(一个客户可以有许多合同,我都可以用得到它们在客户名单中列出合同字段,但我的问题是,我怎样才能实现相反的目的 - 即获得合同映射的客户?
的 “多” 方始终是关系的所有者,所以你定义连接那边的桌子。在这个例子中你实际上不需要连接表:多方的一个字段可以存储它的所有者的引用。 – toto2