Quero persistir um objeto da seguinte maneira, tenha uma pessoa que tem uma cidade que tb é um objeto, dessa forma para persistir pessoa tenho que fazer…
Cidade cid = new Cidade();
cid.setId(1L);
cid.setNome("Nome Cidade");
//... para todas as propriedades da cidade
pessoa.setCidade(cid);
Service().save(pessoa);
como não tenho minha cidade e como ela já está na base para não ter que consulta-la e depois seta-la na pessoa, teria com eu somente passar o ID para o objeto cid e inseri-lo em pessoa para depois persistir e com isso ganhar performance???
Funciona mas verifique se no mapeamento do relacionamento entre Pessoa e Cidade, você colocou update=“false” pois se foi colocado o contrário você atualizará a cidade deixando os outros campos desta nulos.
Assim, estou usando Hibernate com Anotations e a forma como está mapeado está para não replicar um seve ou update para todos. Estou omitindo o cascadeType.ALL…
Esse objeto não existe, ele deve ser buscado bando para compor o objeto pessoa e para não ter que realizar esta consulta queria somente passar o id no objeto e depois persistir… ganhando performance
Esse objeto não existe, ele deve ser buscado bando para compor o objeto pessoa e para não ter que realizar esta consulta queria somente passar o id no objeto e depois persistir… ganhando performance [/quote]
Buscar? então vc já tem uma lista de cidades persistida certo?
Se vc tem uma lista de cidades vc tem os id, se vc souber o id da cidade pode fazer como eu falei.
Se vc tem somente o id, pode fazer que da certo, não é preciso ter o objeto todo não, mas ai cuidado com os Cascades…
Esse objeto não existe, ele deve ser buscado bando para compor o objeto pessoa e para não ter que realizar esta consulta queria somente passar o id no objeto e depois persistir… ganhando performance [/quote]
Buscar? então vc já tem uma lista de cidades persistida certo?
Se vc tem uma lista de cidades vc tem os id, se vc souber o id da cidade pode fazer como eu falei.
Se vc tem somente o id, pode fazer que da certo, não é preciso ter o objeto todo não, mas ai cuidado com os Cascades…[/quote]
Isso ai, eu já tenho o id da cidade que quero. Tentei aqui mas não deu certo creio que seja por ter algum objeto cascade. Vou fazer uma busca e mudar o que achar… e posto ai!
Esse objeto não existe, ele deve ser buscado bando para compor o objeto pessoa e para não ter que realizar esta consulta queria somente passar o id no objeto e depois persistir… ganhando performance [/quote]
Buscar? então vc já tem uma lista de cidades persistida certo?
Se vc tem uma lista de cidades vc tem os id, se vc souber o id da cidade pode fazer como eu falei.
Se vc tem somente o id, pode fazer que da certo, não é preciso ter o objeto todo não, mas ai cuidado com os Cascades…[/quote]
Isso ai, eu já tenho o id da cidade que quero. Tentei aqui mas não deu certo creio que seja por ter algum objeto cascade. Vou fazer uma busca e mudar o que achar… e posto ai! [/quote]
A relação pessoa cidade dentro da classe pessoa não pode ter cascateamento.
Aqui eu uso JPA com Hibernate e sempre faço isso, e da certo.