A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Universidade Federal do Rio Grande do Sul POD – Programação com Objetos Distribuídos Professor: Claúdio Fernando Resin Geyer Resumo: Transações – Tutorial.

Apresentações semelhantes


Apresentação em tema: "Universidade Federal do Rio Grande do Sul POD – Programação com Objetos Distribuídos Professor: Claúdio Fernando Resin Geyer Resumo: Transações – Tutorial."— Transcrição da apresentação:

1 Universidade Federal do Rio Grande do Sul POD – Programação com Objetos Distribuídos Professor: Claúdio Fernando Resin Geyer Resumo: Transações – Tutorial J2EE Sun Versão 1.3 Marci Vanja Satico Yassuhara – e-mail: mvsy@portoweb.com.brmvsy@portoweb.com.br Tisiana Toller Haygert – e-mail: tisiana@redemeta.com.brtisiana@redemeta.com.br Novembro/2003

2  Transação é um conjunto de ações que são bem sucedidas ou falham como um todo. É uma unidade indivisível de trabalho.  Elas garantem a integridade dos dados no acesso concorrente dos dados por múltiplos programas e nos casos de falha no sistema.  Uma transação pode terminar de duas maneiras: por confirmação de todas as operações que a com- põe (commit) ou pelo cancelamento das operações (rollback). Transações

3 Transações Container-Managed  Simplificam o desenvolvimento: no código não são incluídos comandos de inicio e fim da tran- sação.  O container começa uma transação antes que um método bean comece e confirma a transação antes da saída do método.  Cada método pode ser associado a uma única transação.

4 Transações Container-Managed Atributo da TransaçãoTransação no ClienteTransação associada ao bean Required T1 - T1 T2 RequiresNew T1 - T2 Mandatory T1 - T1 ERRO NotSuported T1 - ---- Suports T1 - T1 - Never T1 - ERRO -

5 Transações Container-Managed  Desfazendo Transações: Cancelamento automático pelo container no caso de exceção do sistema. Invocação do método setRollbackOnly da interface EJBContext.  Sincronizando Variáveis de Instância – session bean: Interface SessionSynchronization:  Métodos: afterBegin, beforeCompletion e afterCompletion.

6 Transações Bean-Managed  Assinala explicitamente os limites da transação.  Tipos: JDBC: controlada pelo gerenciador de transação SGBD. Métodos commit e rollback da interface Connection. JTA: permite demarcar transações de maneira independente da implementação do gerenciador de transações. Métodos begin, commit e rollback da interface UserTransaction.

7 Transações Bean-Managed  Retorno do método sem Confirmação: Session bean sem estado: o método deve fazer commit ou rollback em uma transação antes de retornar. Session bean com estado: transação JTA: a associação é mantida através de múltiplas chama- das do cliente. A associação é mantida até que a instância bean complete a transação. Session bean com estado: transação JDBC: a conexão JDBC mantém a associação através de múltiplas chamadas. Se a conexão é fechada, a associação não é mantida.

8 Transações Enterprise Bean

9  Timeouts: Container-Managed: Controla-se o intervalo de timeout de uma transação ajustando o valor da propriedade transaction.timeout. Bean-Managed JTA: Deve-se invocar o método setTransactionTimeout da interface UserTransac- tion.  Níveis de Isolamento: Estágio em que o dado que está sendo atualizado é visível para outras transações.

10 Transações Enterprise Bean  Atualizando Múltiplos Bancos de Dados: O gerenciador de transação J2EE controla todas as transações com exceção das transações Bean- Managed JDBC. Permite que um enterprise bean atualize múltiplos bancos de dados dentro de uma única transação.  Transações em Componentes Web: Pode ser demarcada com as interfaces java.sql.- Connection ou javax.transaction.UserTransaction.


Carregar ppt "Universidade Federal do Rio Grande do Sul POD – Programação com Objetos Distribuídos Professor: Claúdio Fernando Resin Geyer Resumo: Transações – Tutorial."

Apresentações semelhantes


Anúncios Google