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

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

Container Managed Persistent Bean Kellyton Brito Projeto Compose - 27.06.2003.

Apresentações semelhantes


Apresentação em tema: "Container Managed Persistent Bean Kellyton Brito Projeto Compose - 27.06.2003."— Transcrição da apresentação:

1 Container Managed Persistent Bean Kellyton Brito Projeto Compose

2 CMP – Motivação Desenvolver beans portáveis, com implementação da lógica persistente independente da lógica do bean.

3 CMP – Conceito Básico O desenvolvedor não implementa a lógica persistente (operações de armazenamento) A lógica persistente é implementada pelo EJB Container de forma automatizada

4 CMP – Entity Beans como Subclasses Torna o Bean Portável Separa o Entity Bean de sua representação persistente Superclasse contém a lógica do bean e é implementada pelo desenvolvedor Subclasse contém a lógica de persistência e é gerada pelo Container

5 CMP – Atributos Na Superclasse não é declarado nenhum atributo persistente. Atributos do bean mantidos na Subclasse Superclasse declarada como classe abstrata para acessar métodos da subclasse Atributos descritos no descritor xml

6 CMP – Definição de Atributos Atributos definidos no descritor xml... 2.x ProductBean chave nome saldo...

7 CMP – Acesso aos atributos Métodos de acesso aos atributos são mantidos na subclasse Métodos de get/set triviais são gerados automaticamente pelo container no formato get + nomeDoCampo (1ª letra no nome em maiúscula) Métodos de acesso aos atributos definidos na SuperClasse como abstratos Outros métodos definidos de maneira tradicional

8 CMP – Acesso aos Campos na SuperClasse public abstract class meuBean implements EntityBean { protected EntityContext ctx; public abstract int getChave(); public abstract void setChave(int chave); public abstract String void getNome(); public abstract void setNome(String nome);... }

9 CMP – Métodos de Busca Chamados pelo Home Object EJB Container implementa os métodos de busca Descrição da busca no descritor xml. – Facilita a portabilidade Utilização do EJB-QL: SQL orientado a objeto Pode utilizar ejbSelect() para efetuar operações sobre um conjunto entity beans

10 CMP – Implementação das Buscas Definição da implementação da busca feita no descritor (xml)... findByName java.lang.String...

11 CMP – Arquivos Gerados Pelo desenvolvedor do Bean: – Remote Interface – Local Interface – Home Interface – Local Home Interface – Bean Abstract Class – Primary Key Class – Deployment Descriptor – *Container-Specific Deployment Descriptor

12 CMP – Arquivos Gerados Pelo Container (automaticamente) – Beam SubClass – EJB Local Object – Ejb Object – Home Object – Local Home Object

13 CMP – Remote Interface Contém a assinatura dos métodos que o cliente pode acessar public interface Product extends EJBObject { public String getNome() throws RemoteException; public void setNome(String name) throws RemoteException;... }

14 CMP – Local Interface Contém a assinatura dos métodos que o cliente pode acessar de forma local A única diferença para a Remote Interface é que não lança RemoteException public interface Product extends EJBLocalObject { public String getNome(); public void setNome(String nome);... }

15 CMP – Home Interface Contém os métodos de create, buscas e ordenação public interface ProductHome extends EJBHome { Product create (tipo1 parametro1, tipo2 parametro2, tipo3 parametro3) throws CreateException, RemoteException) public Product findByPrimaryKey (ProductPK key) throws FinderExceptiom RemoteException; public Collection findByName (String name) throws FinderExceptiom RemoteException;... }

16 CMP – Home Interface Contém os métodos de create, buscas e ordenação A única diferença para a Home Interface é que não lanca RemoteException public interface ProductHome extends EJBHome { Product create (tipo1 parametro1, tipo2 parametro2, tipo3 parametro3) throws CreateException, RemoteException) public Product findByPrimaryKey (ProductPK key) throws FinderExceptiom RemoteException; public Collection findByName (String name) throws FinderExceptiom RemoteException;... }

17 CMP – Primary Key Classe que contém a chave primária do entity bean.

18 CMP – Bean Contém: – Métodos abstratos de get/set: public abstract String getName(); public abstract void setName(String name); – Métodos padrões chamados pelo Container public void ejbActivate() {} public void ejbRemove() {} public void ejbPassivate() {} public void ejbLoad() {} public void ejbStore() {} public void setEntityContext(EntityContext ctx) {} public void unsetEntityContext() {} public void ejbPostCreate (parametros do create) {} public void ejbCreate (parametros do create){}

19 CMP – Descritor XML A alma do CMP – Definições Gerais Container Definições de campos – Definições de Queries – Assembly descriptor: ???

20 CMP – Discussão O gerenciamento da persistência feito pelo Container não prejudica por demais o desempenho?

21 CMP – Dúvidas Dúvidas?

22 Referências Mastering Enterprise JavaBeans, 2 nd Edition


Carregar ppt "Container Managed Persistent Bean Kellyton Brito Projeto Compose - 27.06.2003."

Apresentações semelhantes


Anúncios Google