2016-12-29 19 views
0

Это мои классы:Hibernate не создает внешний ключ в таблицах в двунаправленной связи один-к-одному

@MappedSuperclass 
@EntityListeners(AuditingEntityListener.class) 
public abstract class BaseEntity<T> implements Serializable { 
    @Id 
    @Column(name = "id", unique = true, nullable = false) 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private T id; 
} 

@Entity 
@Table(name = "core_users") 
@Inheritance(strategy = InheritanceType.JOINED) 
public class User extends BaseEntity<Long> implements UserDetails { 

} 

@Entity 
@Table(name = "app_customers") 
public class BaseCustomer extends User { 

    @OneToOne(mappedBy = "owner", cascade = CascadeType.ALL) 
    private Address address; 

} 

@Entity 
@Table(name = "app_address") 
public class Address extends BaseEntity<Long> { 

    @Id 
    @Column(name = "id", unique = true, nullable = false) 
    @GeneratedValue(generator = "gen") 
    @GenericGenerator(name = "gen", strategy = "foreign", parameters = @Parameter(name = "property", value = "owner")) 
    private Long id; 

    @OneToOne 
    @PrimaryKeyJoinColumn 
    private BaseCustomer owner; 

} 

Когда я запустить приложение, чтобы создать таблицу, в создании таблицы, но не создают внешние ключи в app_customers и app_address.

ответ

 Смежные вопросы

  • Нет связанных вопросов^_^