Domanda

Sto cercando di persistere due entità che hanno una relazione di Onetomany L'intestazione delle mie due entità è:

@ManyToOne(cascade = CascadeType.PERSIST)
private Customer customer;

/******
@OneToMany(cascade = CascadeType.PERSIST, mappedBy = "customer")
private List<Data> datas;
.

In entrambi i responsabili delle entità ho creato 2 metodo che consente di creare ND persistono le due entità.

 public Data createData(String name, int number) {
        Data d = new Data();
        data.setNamte(name);
        data.setNumber(number);
        return mail;
    }

 public Customer createCustomer(String name, String famillyname, int age, List<Data> datas) {
        Customer cust=new Customer();  
       cust.setName(name);
       cust.setFamillyName(famillyname);
       cust.setAge(age);
       cust.setData(data);
       em.persist(cust)
        return data;
    }
.

Quando ho chiamato entrambi i metodi, le entità sono state create e persistevano con successo, ad eccezione dell'ID del cliente nel DataTable dei dati che ottengono Dove pensi che il problema consiste in?

È stato utile?

Soluzione

Il lato del proprietario dell'associazione è Data.customer.JPA non si preoccupa del lato investito (Customer.datas), ma questa è l'unica fianco che inizializza.

Chiama data.setCustomer(cust) su ogni dato che si desidera associare al cliente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top