Pregunta

Estoy tratando de persistir en dos entidades que tienen una relación en la detección El encabezado de mis dos entidades son:

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

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

en el administrador de ambas entidades, he creado 2 métodos que permiten crear y conservar las dos entidades.

 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;
    }

Cuando llamé a ambos métodos, las entidades se crearon y persistieron con éxito, excepto la identificación del cliente en los datos de datos, ¿dónde crees que consiste el problema?

¿Fue útil?

Solución

El lado propietario de la asociación es Data.customer.A JPA no le importa el lado inverso (Customer.datas), pero este es el único lado que inicializa.

Llamar data.setCustomer(cust) sobre cada Dato que desee asociar con el cliente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top