Retornando o id de um objeto inserido no Hibernate
6 respostas
andre_guitar7
No Hibernate me disseram que a cada registro devo voltar o mesmo objeto com o id… como posso fazer isso? se eu tenho a minha função insert assim:
public Person insert( Person person ) throws Exception {
Transaction transaction = this.session.beginTransaction();
try{
person.setDateRegister( new Date() );
this.session.save( person );
transaction.commit();
}catch( Exception e ){
transaction.rollback();
}
return null;
}
O Hibernate tem alguma função que retorna o id do objeto inserido?
Você tá retornando null. No lugar disso, retorne person ou então troque o retorno do método para void. Para acessar o id, basta usar person.getId() ou algo do tipo.
danieldestro
Se seu objeto person tem um atributo de id, que foi devidamente configurado no Hibernate, voce nao precisa fazer nada. Exemplo:
Person p = new Person("nome da pessoa");
salvar( p );
System.ou.println( p.getId() );
Sacou?
andre_guitar7
danieldestro:
Se seu objeto person tem um atributo de id, que foi devidamente configurado no Hibernate, voce nao precisa fazer nada. Exemplo:
Person p = new Person("nome da pessoa");
salvar( p );
System.ou.println( p.getId() );
Sacou?
Cara, é mesmo… valew
Mauricio_Linhares
O método save() de session retorna o ID do objeto que está sendo gravado (ele retorna “Serializable”). É só retornar o que ele retornar.
altitdb
danieldestro:
Se seu objeto person tem um atributo de id, que foi devidamente configurado no Hibernate, voce nao precisa fazer nada. Exemplo:
Person p = new Person("nome da pessoa");
salvar( p );
System.ou.println( p.getId() );
Sacou?
Estou começando a mecher com o hibernate agora.
Como sei que minha ID está configurado corretamente?
Obrigado.
Marky.Vasconcelos
Se voce esta usando Annotations o atributo id deve ter