带有目标实体中的连接列的单向OneToOne

时间:2016-09-26 17:25:02

标签: java jpa hibernate-mapping

我们如何在两个实体之间实现单向@OneToOne映射,并使用@JoinColumn应用于目标实体。

例如 我有两个实体:

   @Entity
   public class Person {

      // Attaches column in the source entity i.e. Person
      @OneToOne
      @JoinColumn(name = "Person_ID")
      private Address address;

      //Works for @oneToMany, attaches column in target entity i.e. Address
      @OneToMany
      @JoinColumn(name = "Person_ID")
      private Set<Address> addresses;  
   }

   @Entity
   public class Address {
     //list of columns
   }

根据文件: http://docs.oracle.com/javaee/6/api/javax/persistence/JoinColumn.html

如果连接是使用外键映射策略进行OneToOne或ManyToOne映射,则外键列位于源实体的表中或可嵌入

如果连接是使用外键映射策略进行单向OneToMany映射,则外键位于目标实体的表中

0 个答案:

没有答案