Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
Sintaxe
Exemplo
Nome do EJB no DD
<nome>EJB
AccountEJB
<nome>JAR
AccountJAR
Classe de
implementao do EJB
<nome>Bean
AccountBean
Home interface
<nome>Home
AccountHome
Remote interface
<nome>
Account
Tipos de Beans
Caracterstica
O que o Bean
representa
Session Bean
Entity Bean
Do uma viso OO de um BD
Atributos
Representam o estado da
conversao. Este estado
Representam dados de um
mantido entre chamadas a
banco de dados (colunas de
mtodos mas no depois que uma tabela, por exemplo)
a sesso acaba
Persistncia
(alm da
sesso)
Gerenciada automaticamente
pelo Container
Acesso compartilhado entre
clientes
Container gerencia a
concorrncia
Identificado usando uma
chave primria
Criao
Durabilidade
No sobrevive a um crash de
servidor
Sobrevive a um crash de
servidor
Transao
Exemplo
Shopping Cart
Gerenciado
automatica
Gerncia de mente pelo
estado
Container
(Activation,
Passivation)
Estado
conversacio
Responsabili
O cliente tem que manter qualquer estado
nal pode ser
dades
necessrio
mantido no
Bean
Performance Mais pesado Extremamente lightweight
Verificao de crdito
(Todo o trabalho pode ser feito numa nica
chamada de mtodo)
Mailer Bean para enviar mail confirmando uma
compra
Bean que valida um ID de empregado
Exemplo
Shopping
Cart
EJB != J2EE
O que resta do framework J2EE sem o modelo EJB?
J2EE basicamente uma padronizao de uma srie de servios
corporativos, tais como gerncia de transaes e gerncia de threads
EJB uma forma de compor esses servios sob a forma de um modelos de
componentes
Ainda podemos acessar alguns esses servios sem fazer uso de EJB
Utilizando-os diretamente no cdigo :-(
Utilizando alguns frameworks ou bibliotecas que abstraem o uso de tais
servios
No entanto, alguns servios apenas so oferecidos no modelo EJB
Entity beans so os nicos components dedicados ao acesso de dados no
framework J2EE
S EBJs suportam gerncia de transaes declarativas via Container Managed
Transactions (CMT)
(Fonte: http://docs.oracle.com/cd/E19575-01/8193669/6n5sg7arb/index.html)
Tudo ok at agora? Voc j sabe o que um componente e a diferena entre
um Java EE Container e um Servlet Container, agora vamos entender um
pouco sobre os temidos EJB's.
(EJB 2.1), JSR 220 (EJB 3.0), JSR 318 (EJB 3.1) and JSR 345 (EJB 3.2).
Vamos falar das 4 ultimas Geraes de EJB's, onde, as ultimas 3 verses se
propoem a reestabelecer a honra da famlia e devem ser analisadas sem
rancor ou maguas, possivelmente causadas em uma poca no to
distante.
Caso use EJB 3.0 sempre defina uma interface para seu Bean. Isto no
uma opo :)
Anotaes:
finalizarCompra();
consultarItensNoCarrinho();
adicionarItensNoCarrinho();
Anotaes
EJB 3.0 necessrio definir uma interface para o bean e mapear se o EJB
ter acesso remoto ou local (similar ao stateless session bean)
EJB 3.1 no mais necessrio definir uma interface se o acesso ao EJB for
local. Deve-se mapear apenas com @Stateful
Um Stateful session bean pode ser definido como ocioso onde realocado
da memria principal para um dispositivo secundrio de armazenamento
(HD por exemplo) at ser requisitada novamente.
@Singleton
@Remote(EJBBean.class)
Public class EJBBeanImpl{ ..... }