Obrigado, Bruno!

Mas, como eu mesmo disse na pergunta, se eu declarar as
PreparedStatements no m�todo service, eu vou eliminar a concorr�ncia de
objetos e resolver meu problema.

Mas minha principal inten��o era quanto � performance. Eu gostaria de
saber se � melhor fazer assim, ou se � melhor cri�-las no init do
servlet, como eu estava pensando, e utilizar o synchronized.
Minha implementa��o atual utiliza a declara��o no init, mas n�o usa nada
de sincroniza��o. Estou preocupado quanto a muitos acessos concorrentes
(ex. loja virtual).

A prop�sito, estou usando Oracle 8.0.5 sobre Red Hat Linux. N�o sei se �
relevante, mas esqueci de dizer no email anterior.

Obrigado.
Dailton.

Bruno Reded wrote:
> 
> Ol� Dailton,
> 
> Crie um PreparedStatement no Service(). Resolve.
> 
> []s
> 
> Bruno
> 
> ----- Original Message -----
> From: "Dailton Santana de Almeida" <[EMAIL PROTECTED]>
> To: "SouJava" <[EMAIL PROTECTED]>
> Sent: Wednesday, May 17, 2000 10:42 AM
> Subject: [SouJava-J] Servlets e sincroniza��o
> 
> > Ol�, pessoal.
> >
> > Estou construindo um servlet que possui v�rias PreparedStatements no
> > m�todo init, al�m da conex�o com o banco.
> >
> > Possuo tamb�m m�todos auxiliares que setam os par�metros das
> > PreparedStatements e devolvem os valores correspondentes da query (por
> > exemplo, seto dois par�metros correspondentes a uma chave prim�ria
> > composta e devolvo um registro do banco).
> >
> > Esses m�todos s�o chamados a partir do m�todo service do servlet.
> >
> > Minha pergunta �: em fun��o do scheduling, corro o risco de perder a
> > consist�ncia dos par�metros em fun��o da concorr�ncia, isto �, quando
> > houver v�rios acessos simult�neos ao servlet, por exemplo no caso
> > anterior, setar um dos par�metros da chave, da� entrar o schedule de
> > outro request, que seta os dois par�metros e executa a query, da� quando
> > volto para o primeiro request, o primeiro par�metro ficar errado?
> >
> > Se o problema realmente ocorre, como solu��o estou pensando em colocar
> > os m�todos auxiliares em quest�o como synchronized. Em termos de
> > performance, essa � a melhor maneira ou � prefer�vel criar as vari�veis
> > Statement ou PreparedStatement direto no m�todo service (da� existiria 1
> > statement por request e n�o haveria o problema da concorr�ncia)?
> >
> > No caso da solu��o por sincroniza��o, � melhor escrever os m�todos com o
> > synchronized ou criar blocos synchronized com objetos? Neste caso, qual
> > objeto deve ser sincronizado? A pr�pria Statement?
> >
> > Desculpem o texto meio longo, sei que a d�vida � dif�cil.
> > Espero conseguir ajuda e espero que a d�vida ajude outros.
> >

-- 
Dailton Santana de Almeida
mailto:[EMAIL PROTECTED]

    --------------------------- LISTA SOUJAVA ---------------------------
    http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
    [d�vidas mais comuns: http://www.soujava.org.br/faq.htm]
    [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
    [regras da lista: http://www.soujava.org.br/regras.htm]
    ---------------------------------------------------------------------

Responder a