Porque Hibernate gera novo select para garantir integridade?

1 resposta
J

Hola Galera,

Estou com uma duvida e gostaria de expor para analisar a opiniao de vcs.

Tenho 2 Tabelas, a SPE_ACCION e SPE_AUDIT, onde SPE_AUDIT recebe uma FK de SPE_ACCION.

No codigo faço:

SpeAccion accion = new SpeAccion();
accion.setAccionId(accionId);

SpeAudit auditoria = new SpeAudit();
auditoria.setSpeAccion(accion);

Session session = hibernate.getSession();
session.save(auditoria);

Todas vezes antes dele inserir o registro de Auditoria o Hibernate faz uma novaq query no banco para validar o Id da tabela Accion garantindo a integridade do dado.

Tem como evitar isto, pois estou fazendo um cache com os id’s desta tabela no java com varios Dtos, e nao queria que qdo Hibernate fosse inserir fizesse de nv a pesquisa, pois a ideia era acelerar o processo… e nao repetilo.

Agradeço a ajuda se alguem souber…
Valeu

1 Resposta

Marcio_Duran

joaotrico:

Tem como evitar isto, pois estou fazendo um cache com os id’s desta tabela no java com varios Dtos, e nao queria que qdo Hibernate fosse inserir fizesse de nv a pesquisa, pois a ideia era acelerar o processo… e nao repetilo.
Agradeço a ajuda se alguem souber…
Valeu

O que vc esta me dizendo é que voce não ter um objeto de persistencia mas sim mante-lo em cache de forma a não replica-lo diretamente ao respositorio ? Então você deve usar um Design Pattern que não delege essa responsabilidade de pesquisa, não entendo o recurso que vc poderia ai adotar dizer que esta fazendo um Cache ainda voce esta expandindo um outro rercuso que é a pinha de objetos.

Criado 17 de dezembro de 2008
Ultima resposta 17 de dez. de 2008
Respostas 1
Participantes 2