Pergunta

Estou tentando persistir duas entidades que têm um relacionamento onetomany O cabeçalho das minhas duas entidades é:

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

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

em ambos os gerenciadores de entidades criei 2 métodos que permitem criar e persistir as duas 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;
    }

Quando liguei para os dois métodos, as entidades foram criadas e persistidas com sucesso, exceto o ID do cliente nos dados de dados que conseguem onde você acha que o problema consiste?

Foi útil?

Solução

O lado proprietário da associação é Data.customer.JPA não se importa com o lado inverso (Customer.datas), mas este é o único lado que você inicializa.

Chamar data.setCustomer(cust) em todos os dados que você deseja associar ao cliente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top