Top Banner
Enterprise JavaBeans Érika Ishy
35

Enterprise JavaBeans

Nov 14, 2014

Download

Technology

elliando dias

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Enterprise JavaBeans

Enterprise JavaBeans

Érika Ishy

Page 2: Enterprise JavaBeans

Roteiro Visão Geral

JavaBeans Enterprise JavaBeans

Infra-Estrutura EJB Servidor J2EE Interfaces de um EJB Tipos de Visão Tipos de EJB

Page 3: Enterprise JavaBeans

Visão Geral O que é JavaBeans

Modelo de componentes que privilegia o suporte a ferramentas gráficas para a composição de aplicações – controles visuais (botão)

Define a arquitetura básica do

componente, de suas interfaces e de como

ele interage com outros componentes

Enterprise JavaBeans (EJB) Extensão de JavaBeans para

ambientes distribuídos Ambiente Java robusto Aplicações com arquitetura

multicamadas

Page 4: Enterprise JavaBeans

Visão Geral Modelo de componentes para grandes

aplicações de negócio Interfaces padronizadas – Home/Remote Sistema de execução de componentes

para arquiteturas multicamadas – EJB Container

Objetivos: Reutilização de software Portabilidade de componentes Execução de transações Suporte para controle e segurança

Page 5: Enterprise JavaBeans

Visão Geral Simplifica as responsabilidades do

desenvolvedor sobre a computação distribuída Focalizar nas principais

funcionalidades que a aplicação de negócio requer

Page 6: Enterprise JavaBeans

Visão GeralSem

componentes: aplicações acessando

diretamento o bd

[Prado, 2003b]

Page 7: Enterprise JavaBeans

Visão GeralCom componentes:

aplicações acessam as regras de negócio dos componentes. Estes,

acessam o bd

[Prado, 2003b]

Page 8: Enterprise JavaBeans

Visão Geral Separação entre aplicação e

componente => código mais simples e flexível

Melhora a segurança e a confiabilidade

Facilita a manutenção Reutilização de código => diversas

aplicações clientes usando o mesmo componente simultaneamente

Page 9: Enterprise JavaBeans

Infra-Estrutura EJB

[Prado, 2003a]

Page 10: Enterprise JavaBeans

Infra-Estrutura EJB

[Prado, 2003a]

Page 11: Enterprise JavaBeans

Servidor J2EE

Ambiente para a execução

aplicações EJB.Gerencia e

coordena alocação de recursos.

Encapsula os beans EJB.

Gerenciamento de transações,

segurança, comunicação, conexões bd...

Componentes focados na lógica

do problema.Classe do bean implementa os

métodos de negócio

[Prado, 2003a]

Page 12: Enterprise JavaBeans

Servidor J2EE

[Prado, 2003b]

Page 13: Enterprise JavaBeans

Interfaces de um EJB

[Maciel, 2002]

Page 14: Enterprise JavaBeans

Interfaces de um EJB Interface Home

Serviços de criação e remoção de instâncias do componente

create() - ejbCreate() remove() - ejbRemove()

Métodos de busca: findByPrimaryKey()

métodos do ciclo de vida

Page 15: Enterprise JavaBeans

Interfaces de um EJB Interface Remota

Visão do cliente para uma instância de um ejb – regras de negócio

métodos de negócio

métodos da interface remota

implementação na classe do ejb

Page 16: Enterprise JavaBeans

Tipos de Visão

[Prado, 2003b]

Page 17: Enterprise JavaBeans

Tipos de Visão Visão Remota

Sistema distribuído Transparência na localização Limitações de performance - rede

Visão Interface Classe

home javax.ejb.EJBHomeRemota

remota javax.ejb.EJBObject

Page 18: Enterprise JavaBeans

Tipos de Visão

Page 19: Enterprise JavaBeans

Tipos de Visão

Page 20: Enterprise JavaBeans

Tipos de Visão Visão Local

Servidor Máquina Cliente Acesso local e direto aos métodos da

interface do componente Ganho de performance - overhead Perda da transparência na localização Clientes na mesma JVM que os EJB’s

home local javax.ejb.EJBLocalHomeLocal

local javax.ejb.EJBLocalObject

Visão Interface Classe

Page 21: Enterprise JavaBeans

Tipos de EJB

[Prado, 2003b]

Page 22: Enterprise JavaBeans

Tipos de EJB

“Quebra” o session bean e seus dados são

perdidos.Entity bean é persistente e

representa o dado no bd (recuperado).

Page 23: Enterprise JavaBeans

Tipos de EJB - Session Bean Session Bean

Gerenciado pelo container Não pode ser recuperado Stateless Stateful

Page 24: Enterprise JavaBeans

Tipos de EJB - Session Bean Stateful

Mantém estado ao longo de todo a conversação com um cliente

Dedicado a um único cliente, não podendo ser acessado por outros clientes – compra com cartão de crédito

tempo de vida do stateful

tempo de vida do cliente

Page 25: Enterprise JavaBeans

Tipos de EJB - Session Bean Stateful

[Sun, 2002b]

Invocados pelo EJB

Container

Métodos de negócio podem ser

invocados

Caso precise liberar

recursos

Page 26: Enterprise JavaBeans

Tipos de EJB - Session Bean Stateless

Não possui estado conversacional Não é dedicado a um único cliente Duração de um intervalo de execução

de um serviço invocado pelo cliente – caixa: aplicar desconto, calcular frete

Ciclo de vida muito simples

Page 27: Enterprise JavaBeans

Tipos de EJB - Session Bean Stateless

[Sun, 2002b]

EJB Container responsável

pela criação/remoção sem que seja indicado pelo cliente

Create() e Remove() somente pelo EJB

Container

Page 28: Enterprise JavaBeans

Tipos de EJB - Entity Bean Entity Bean

Opera como objeto denegócio representando o dado no bd ou em qualquer outra fonte de dados Dado representado pelo beanpode mudar – sincronização bean/bd – responsabilidade do container/bean

Page 29: Enterprise JavaBeans

Tipos de EJB - Entity Bean

[Prado, 2003b]

Page 30: Enterprise JavaBeans

Tipos de EJB - Entity Bean Persistência Gerenciada pelo

Container Simplificação do desenvolvimento de

entity beans Gerencia e executa todas as

operações de recuperação e armazenamento de dados

Page 31: Enterprise JavaBeans

Tipos de EJB - Entity Bean Persistência Gerenciada pelo Bean

Desenvolvedor é responsável pela implementação das operações de persistência

Operações implementadas diretamente nos métodos da classe do bean EJB - códigos SQL e JDBC

Page 32: Enterprise JavaBeans

Tipos de EJB - Entity Bean

[Sun, 2002b]

EJB Container cria uma

instância e associa um contexto

Pool de instâncias – aguarda o

cliente

Métodos de negócio podem ser

invocados

Caso precise liberar

recursos

Invocado pelo cliente

Page 33: Enterprise JavaBeans

Referências [HEINEMAN, 2001] HEINEMAN, G., T., COUNCIL, W., T.

Component-based software engineering: putting the pieces together. Addison-Wesley, 2001.

[MACIEL, 2002] MACIEL, F. R. Modelagem do catálogo e autenticação do direto utilizando j2ee e jaas. Porto Alegre, RS, 2002. 72 f. Monografia (Bacharelado em Ciência da Computação) – Instituto de Informática, Universidade Federal do Rio Grande do Sul. Disponível em: <http://www.inf.ufrgs.br/procpar/direto/trabalhos/monografia.pdf> Acesso em: 24 fev. 2003.

[THOMAS, 1998] THOMAS, A. Enterprise javabeans technology: server component model for the JavaTM plataform. Patricia Seybold Group, dez. 1998. Relatório técnico. Disponível em: <http://www.ejbean.com/documents/downloads/white_paper.pdf> Acesso em: 16 nov. 2002.

Page 34: Enterprise JavaBeans

Referências [PRADO, 2003a] PRADO, A. F. Enterprise javabeans

technology. Curso de Pós-Graduação em Ciência da Computação. Disponível em: <http://www.recope.dc.ufscar.br/engenhariadesoftware/principal/index.htm> Acesso em: 5 fev. 2003.

[PRADO, 2003b] Prado, A. F. Tecnologias para DBC. Disponível em: <http://www.cos.ufrj.br/~wdbc/2002/download/tecnologias.pdf> Acesso em: 04 jun. 2003.

[SUN, 2002c] SUN MICROSYSTEMS. Designing enterprise applications with the j2ee platform, second edition. Disponível em: <http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/index.html> Acesso em: 5 mar. 2003.

Page 35: Enterprise JavaBeans

Referências [SUN, 2002a] SUN MICROSYSTEMS. Developing enterprise

applications using the j2eeTM platform. Disponível em: <http://developer.java.sun.com/developer/onlineTraining/J2EE/Intro2/j2ee.html> Acessado em: 4 fev. 2003.

[SUN, 2002b] SUN MICROSYSTEMS. The j2ee tutorial. Disponível em: <http://java.sun.com/j2ee/1.3/download.html#tutorial> Acesso em: 4 fev. 2003.