Pegar o ultimo inserido no hibernate

5 respostas
F

quero pegar a ultima id que foi inserida no hibrnate…
ele ja tem um metodo que faz isso?

5 Respostas

J

Pega a chave do objeto que foi inserido, serve?

Cliente cliente = new Cliente();
cliente.setNome("Jair");

sessao.save(cliente);

int ultimo = cliente.getId();
F

eu acho que sim…

deixa eu explicar melhor…

tenho uma tabela “evento” e uma “parceiro”

no mesmo jsp eu cadastro o evento e os parceiros dele…
mas eu so posso cadastrar os parceiros depois que eu cadastrar o evento pq eles tem referencia… ai eu queria assim que eu der o evento.save(), eu pegar o id que eu salvei e setar no objeto parceiros pra poder inserir o parceiro… deu pra entender ai?haha… obrigado!!

J

Mas porque você não mapeia esses parceiros em uma coleção e vai adicionando eles ao evento e depois dá um save() no evento? Assim o Hibernate já altera todas as tabelas relacionadas…

F

ta mapeado assim no eventos…

<set name="tbEveParceiroses" inverse="true">
            <key>
            <column name="EVE_ID" precision="10" scale="0" not-null="true" >
            </key>
            <one-to-many class="TbEveParceiros" />
 </set>

vai fazer sozinho?

J

Coloca assim:

<set name="tbEveParceiroses" inverse="true" cascade="all"> <key> <column name="EVE_ID" precision="10" scale="0" not-null="true" > </key> <one-to-many class="TbEveParceiros" /> </set>

Aí ele faz tudo sozinho!

Criado 23 de agosto de 2006
Ultima resposta 23 de ago. de 2006
Respostas 5
Participantes 2