Em 10/10/2011 14:59, Guimarães Faria Corcete DUTRA, Leandro escreveu:
> 2011/10/10 Bruno Silva<bemanuel...@gmail.com>:
>> Então pode ser utilizada a mesma lógica. Basicamente, o Hibernate
>> verifica se já tem chave primária no objeto (tipo o id não nulo) a ser
>> gravado na base, se não tiver Insert se tiver Update.
>
> Se isso for verdade, o Hibernate reproduz um mau padrão de
> programação.  Não vale a pena selecionar toda a vez.  Vale mais a pena
> tentar primeiro a operação mais comum, capturar o erro e passar para a
> alternativa.

        Ele não seleciona, verifica no objeto que ainda está em memória, é 
apenas um:

        if (objeto.chaveprimaria == null)

        Isto ainda é feito apenas se o objeto estiver no estado *detached*, 
caso contrário, nem precisa fazer, já que se ele estiver no estado 
*managed* ele obviamente já deve estar com a chave primária atribuída.

        Abraço,

--
Shander Lyrio
http://about.me/shander
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a