@OneToOne однонаправленное и двунаправленное

У меня есть два примера, первый - это однонаправленное отображение @OneToOne, а второй - двунаправленное. При однонаправленном отображении таблица на стороне-владельце должна содержать столбец соединения, который ссылается на идентификатор другой таблицы; то в двунаправленном режиме они оба должны содержать столбец внешнего ключа друг для друга. Но после создания схемы базы данных с помощью стратегии автогенерирования два примера имеют одинаковый эффект на схему базы данных. Однонаправленное сопоставление - это нормально, но двунаправленный пример содержит только один столбец внешнего ключа, но он должен включать внешние ключи друг друга!

Однонаправленное отображение

@Entity
public class Customer43 {

@Id
@GeneratedValue
private Long id;
private String firstName;
private String lastName;
private String email;
private String phoneNumber;
@OneToOne
@JoinColumn(name = "address_fk")
private Address43 address;

// Getters, Setters and Constructors.
}

@Entity
public class Address43 {

@Id
@GeneratedValue
private Long id;
private String street1;
private String street2;
private String city;
private String state;
private String zipcode;
private String country;

// Getters, Setters and Constructors.
}

Двунаправленное отображение

@Entity
public class Customer44 {

@Id
@GeneratedValue
private Long id;
private String firstName;
private String lastName;
private String email;
private String phoneNumber;
@OneToOne
@JoinColumn(name = "address_fk")
private Address43 address;

// Getters, Setters and Constructors.
}

@Entity
public class Address44 {

@Id
@GeneratedValue
private Long id;
private String street1;
private String street2;
private String city;
private String state;
private String zipcode;
private String country;
@OneToOne(mappedBy = "address")
private Customer44 customer;

// Getters, Setters and Constructors.
}

Почему вывод схемы базы данных одинаков и почему двунаправленное отображение действует как однонаправленное?

10
задан Carl Manaster 14 May 2013 в 20:38
поделиться