Je suis arrivé à deux entités:JPA: un problème persistant clé étrangère
client Entité
@Entity
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
@OneToMany(mappedBy="customer", cascade=CascadeType.ALL)
private List<Facility> facilities;
//Setter and Getter for name and facilities
public void addFacility(Facility facility){
this.facilities.add(facility);
}
}
Facility Entité
@Entity
public class Facility {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
@JoinColumn(name="CUSTOMER_FK")
private Customer customer;
private String name;
//Setter and Getter, equals and hashcode
...
}
Donc, dans mon principal que je fais
Customer customer = new Customer();
customer.setName("Wake Forest University");
Facility facility = new Facility();
facility.setName("Tom Cruise");
EntityManager entityManager = Persistence.createEntityManagerFactory("EntityClassPU").createEntityManager();
entityManager.getTransaction().begin();
customer.addFacility(facility);
entityManager.persist(customer);
entityManager.getTransaction().commit();
Wake Forest University
est inséré avec succès dans Customer
, et Tom Cruise
est inséré avec succès dans Facility
, mais à l'intérieur Facility
, la valeur CUSTOMER_FK
est nulle, ce qui suggère que je échoue à persister la contrainte de clé étrangère. Qu'est-ce que j'ai fait de mal ici?
vous êtes génial. Merci homme: D –
@HarryPham: De rien! –
Super !! ceci a résolu mon problème aussi ... – venomrld