Question

J'ai deux exemples qui sont d'abord @onetoone mappage unidirectionnel et deuxième bidirectionnel. Dans le mappage unidirectionnel, le tableau de possession doit contenir une colonne de jointure qui fait référence à l'ID de l'autre tableau; Ensuite, en bidirectionnel, les deux doivent contenir une colonne de clé étrangère les uns pour les autres. Mais après avoir généré le schéma de base de données avec une stratégie automatique, deux exemples ont le même effet sur le schéma de base de données. La cartographie unidirectionnelle est normale mais l'exemple bidirectionnel ne contient qu'une seule colonne de clé étrangère, mais elle doit être impliquée la clé étrangère de l'autre!

Cartographie unidirectionnelle

@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.
}

Cartographie bidirectionnelle

@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.
}

Pourquoi le schéma de la base de données est-il la même et pourquoi la cartographie bidirectionnelle agit-elle comme unidirectionnelle?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top