Pegar o id da insercao que eu fiz  XML
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Autor Mensagem
Basilio
JavaTeenager
[Avatar]

Membro desde: 27/06/2008 11:35:47
Mensagens: 188
Offline

Galera eu gostaria de saber se existe uma forma de na hora que eu inserir um dado numa tabela eu ja recuperar o id q foi gerado. Nao posso utilizar o IDENTITY() pois o meu aplicativo esta usando threads, entao poderia acontecer de a ultima insercao nao ser a que eu quero.

VLW
andreiribas
JavaEvangelist
[Avatar]

Membro desde: 30/04/2006 10:43:13
Mensagens: 478
Localização: Curitiba - PR
Offline

Se você está usando hibernate, quando você chama o métododo save ou persist ele te retorna o id do objeto.

SCJP 6.0
OCE JSP and Servlet Developer, JEE 6
[MSN]
Basilio
JavaTeenager
[Avatar]

Membro desde: 27/06/2008 11:35:47
Mensagens: 188
Offline

e sem hibernate, tem como?
alanbrasil1984
JavaEvangelist
[Avatar]

Membro desde: 23/07/2006 00:27:57
Mensagens: 359
Localização: Rio de janeiro
Offline

tu usa qual tecnologia par persistencia?



Alan Rodrigo de Oliveira Souza
Fattoria Web
Em busca da SCJP.

[WWW] [MSN] [ICQ]
Basilio
JavaTeenager
[Avatar]

Membro desde: 27/06/2008 11:35:47
Mensagens: 188
Offline

PreparedStatement
erico_kl
Virtual Machine Man

Membro desde: 10/05/2008 08:59:08
Mensagens: 531
Offline

você provavelmente vai inserir um objeto.. então no método que você o insere no banco faça retornar o próprio objeto atualizado..
jgbt
GUJ Master
[Avatar]

Membro desde: 04/06/2003 15:01:48
Mensagens: 1286
Localização: Porto Alegre/RS
Offline

Basilio wrote:PreparedStatement


De uma olhada no metodo PreparedStatement.getGeneratedKeys() que deve te ajudar.
Claro, desde que seu driver JDBC tenha implementado e corretamente.

[]´s


João Bier
Desenvolvedor Java
[Email]
Basilio
JavaTeenager
[Avatar]

Membro desde: 27/06/2008 11:35:47
Mensagens: 188
Offline

Esse PreparedStatement.getGeneratedKeys() me parece funcionar, agora resta saber se no caso da thread ser "quebrada" entre o executeUpdate() e o getGeneratedKeys() e for feita outra insercao o getGeneratedKeys() vai retornar o valor que eu quero ou o da ultima insercao feita.
herbertpimentel
JavaChild
[Avatar]

Membro desde: 21/02/2007 13:11:43
Mensagens: 117
Localização: Macapá-AP
Offline

após realizar a operação de insert ainda na mesma sessão você pode usar um select para recuperar os valores inseridos na chave:


[WWW] [MSN]
 
Índice dos Fóruns » Persistência: Hibernate, JPA, JDBC e outros
Ir para:   
Powered by JForum 2.1.8 © JForum Team