Buscar

04 - ejb

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR 
EJB 
Professor Marcelo Pacote – @professorpacote 
W W W. D OMI NAND OTI .COM.B R 
Enterprise Java Beans (EJB) 
 Aplicações corporativas são naturalmente distribuídas 
 Exemplos: aplicações bancárias, comércio eletrônico, folha de 
pagamentos. 
 Tecnologia de componentes 
 Aplicações compostas por componentes. 
 Um único componente pode ser reutilizado em diversas 
aplicações. 
Escalabilidade 
Professor Marcelo Pacote - @professorpacote 2 
W W W. D OMI NAND OTI .COM.B R 
Componentes X Contêiner X Servidor de Aplicação 
Servidor de 
Aplicação 
Contêiner 
(EJB) 
EJB 
(componente) 
Professor Marcelo Pacote - @professorpacote 3 
W W W. D OMI NAND OTI .COM.B R 
EJB - Características 
 Características: 
 Portabilidade entre servidores de aplicação (WODA) 
 Padrão de mercado 
 Desenvolvimento acelerado 
 Desenvolvedores concentrados na lógica de negócio 
 
 
Transação (JTA) 
Segurança 
Persistência 
Professor Marcelo Pacote - @professorpacote 4 
W W W. D OMI NAND OTI .COM.B R 
Os serviços de gerenciamento, oferecidos pelo contêiner EJB 
(Enterprise JavaBeans), são de: 
a) Transações. Persistência. Ciclo de Vida. Segurança. 
b) Transições. Pertinência. Ciclo de Vida. Risco. 
c) Transformações. Persistência. Ciclo de Projeto. Segurança. 
d) Transações. Comunicação. Ciclo de Vida. Mercado. 
e) Transações. Consistência. Fases. Segurança. 
Exercício [01] (CGU/ESAF/2012) 
Professor Marcelo Pacote - @professorpacote 5 
W W W. D OMI NAND OTI .COM.B R 
A respeito de EJB (Enterprise Java Beans) é correto afirmar que 
a) containers executam em componentes. 
b) servidores de aplicação executam em containers. 
c) containers são hospedados por servidores de aplicação. 
d) servidores de aplicação são hospedados por componentes. 
e) containers são hospedados por componentes. 
Exercício [02] (STN/ESAF/2008) 
Professor Marcelo Pacote - @professorpacote 6 
W W W. D OMI NAND OTI .COM.B R 
Sobre definições e características de Enterprise JavaBeans, analise as 
assertivas e assinale a alternativa que aponta as corretas. 
I. A arquitetura Enterprise JavaBeans é uma arquitetura de componentes para o 
desenvolvimento e a implantação de aplicativos de negócios distribuídos 
baseados em componentes. 
II. Aplicativos escritos utilizando a arquitetura Enterprise JavaBeans são 
escalonáveis, transacionais e seguros com multiusuários. 
III. Aplicativos escritos utilizando a arquitetura Enterprise JavaBeans uma vez 
escritos são implantados em qualquer plataforma de servidor, que suporta a 
especificação Enterprise JavaBeans 
 
 
Exercício [03] (BRDE/AOCP/2012) (1/2) 
Professor Marcelo Pacote - @professorpacote 7 
W W W. D OMI NAND OTI .COM.B R 
IV. A arquitetura JavaBeans encontra-se presentes em outras 
linguagens de programação além da linguagem de 
programação java, esta arquitetura encontra- se em Object 
Pascal, Objective-C, Python, SuperCollider, Ruby, Smalltalk, 
entre outras. 
a) Apenas I e II. 
b) Apenas I e III. 
c) Apenas I, II e III. 
d) Apenas II, III e IV. 
e) I, II, III e IV. 
 
 
Exercício [03] (BRDE/AOCP/2012) (2/2) 
Professor Marcelo Pacote - @professorpacote 8 
W W W. D OMI NAND OTI .COM.B R 
Tipos de Beans - EJB 2.0 
 Session Beans 
 “Verbos”. Modelam processos de negócio, como 
autorização de cartão de crédito, engine de cálculo de 
preços, etc. 
 Entity Beans 
 “Substantivos”. Modelam dados como produto, pedido, 
empregado. 
 Message Driven Beans 
 São semelhantes aos Session Beans, entretanto são 
invocados apenas por meio de mensagens (JMS). 
Professor Marcelo Pacote - @professorpacote 9 
W W W. D OMI NAND OTI .COM.B R 
Tipos de Beans - EJB 3.1 
 Na EJB 3.0, a persistência possui sua própria especificação chamada 
JPA “Java Persistence API”. 
 
 Session Beans 
 “Verbos”. Modelam processos de negócio, como autorização de 
cartão de crédito, engine de cálculo de preços, etc. 
 Entity Beans 
 “Substantivos”. Modelam dados como produto, pedido, empregado. 
 Message Driven Beans 
 São semelhantes aos Session Beans, entretanto são invocados 
apenas por meio de mensagens (JMS). 
Professor Marcelo Pacote - @professorpacote 10 
W W W. D OMI NAND OTI .COM.B R 
Tipos de Beans - Sumário 
 Tipo de Bean EJB 2.x EJB 3.1 
Entity Beans  
 
Message Driven Beans   
Session Beans stateful 
stateless 
stateful 
stateless 
singleton 
Professor Marcelo Pacote - @professorpacote 11 
W W W. D OMI NAND OTI .COM.B R 
Session Beans - Tipos 
 Stateless Session Beans: 
 Não mantém estado entre invocações de métodos. 
 Exemplo: consulta de CEP, autorização de transação de cartão 
 Stateful Session Beans: 
 Mantém seu estado entre chamadas de métodos. 
 Exemplo: carrinho de compras, prova digital 
 Singleton Session Beans: 
 Compartilhar dados transientes entre todos os usuários de uma 
aplicação que faça uso de EJB 
 Exemplo: número de usuários conectados, chat 
 
 
Professor Marcelo Pacote - @professorpacote 12 
W W W. D OMI NAND OTI .COM.B R 
Session Beans (Stateless) 
 São mantidos em um pool no EJB Container 
 Escalabilidade 
 Callbacks 
 @postConstruct e @preDestroy 
 
 
Não existe 
Pronto Instância atendendo 
chamada 
Instância destruída Instância criada 
Professor Marcelo Pacote - @professorpacote 13 
W W W. D OMI NAND OTI .COM.B R 
Session Beans (Stateful) 
 Ciclo de vida 
 Callbacks 
 @postConstruct e @preDestroy 
 @PrePassivate e @PostActivate 
 
 
 
Não existe 
Pronto 
Passivado 
Professor Marcelo Pacote - @professorpacote 14 
W W W. D OMI NAND OTI .COM.B R 
Session Beans (Singleton) 
 Callbacks 
 @postConstruct e @preDestroy 
 
 Não existe 
Pronto 
Instância atendendo 
chamada 
Instância destruída Instância criada 
Professor Marcelo Pacote - @professorpacote 15 
W W W. D OMI NAND OTI .COM.B R 
Exercício [04] (TRT-AM/2012/FCC/Analista) (1/2) 
Professor Marcelo Pacote - @professorpacote 16 
W W W. D OMI NAND OTI .COM.B R 
Exercício [04] (TRT-AM/2012/FCC/Analista) (2/2) 
Foi representado o ciclo de vida de um 
a) Stateful Session Bean. 
b) Stateless Session Bean. 
c) Singleton Session Bean. 
d) Message-Driven Bean. 
e) Embedded Session Bean. 
 
Professor Marcelo Pacote - @professorpacote 17 
W W W. D OMI NAND OTI .COM.B R 
Exercício [5] (BNDES/CESGRANRIO/2013/Desv./46) 
Cada tipo de enterprise bean passa por diferentes fases durante seu 
ciclo de vida. Um desses tipos possui um estado denominado Passivo. 
Quando um bean entra nesse estado, o container EJB o desloca da 
memória principal para a memória secundária. 
Qual tipo de bean se comporta dessa maneira? 
a) Stateless Session Bean 
b) Stateful Session Bean 
c) Web Service Bean 
d) Singleton Session Bean 
e) Message-Driven Bean 
Professor Marcelo Pacote - @profmarcelopacote 18 
W W W. D OMI NAND OTI .COM.B R 
EJB – Outras características 
 Transações 
 CMT (Container Managed Transaction) 
 BMT (Bean Managed Transaction) 
 Persistência com EJB 2.x (BMP e CMP) – compatibilidade 
 Interceptors 
 É comum utilizar interceptadores para tarefas que não estão 
diretamente relacionadas às regras de negócio implementadas nos 
Session Beans. 
 Exemplo: logs e controle de acesso. 
 Podem ser especificados em nível de método ou de classe 
(@interceptors) 
 
Professor Marcelo Pacote - @professorpacote 19 
W W W. D OMI NAND OTI .COM.B R 
Exercício[06] (TRT-MS/2011/FCC/Tec. Judiciário)Em relação ao Enterprise Java Beans, é correto afirmar: 
a) No Session Bean, toda vez que um método é invocado, o estado de suas 
variáveis se mantém apenas durante a invocação desse método. 
b) Um Message-Driven Bean é um EJB que possui as interfaces home e 
remote e apenas um método que recebe qualquer tipo de mensagem. 
c) Um Entity Bean é um tipo de EJB que representa dado não persistente 
armazenado em um banco de dados. 
d) Enterprise Java Beans é um componente J2EE do tipo servidor que 
executa no container do servidor de aplicação. 
e) Message-Driven Bean é um EJB statefull. 
 
Professor Marcelo Pacote - @professorpacote 20 
W W W. D OMI NAND OTI .COM.B R 
[07] (PRODAM-AM/2010/FUNCAB/Analista) (1/2) 
Sejam as seguintes assertivas sobre os tipos de EJB existentes: 
I. Process beans são excelentes opções para a implementação 
da lógica do negócio, dos processos de negócio e dos fluxos de 
trabalho. 
II. Entity beans representam os objetos persistentes em uma 
aplicação EJB. 
III. Asynchronous beans podem ser usados para o envio 
(recebimento) de mensagens assíncronas para (de) outros 
sistemas. 
 
Professor Marcelo Pacote - @professorpacote 21 
W W W. D OMI NAND OTI .COM.B R 
[07] (PRODAM-AM/2010/FUNCAB/Analista) (2/2) 
Marque a alternativa correta em relação às assertivas acima. 
a) Apenas I é verdadeira. 
b) Apenas II é verdadeira. 
c) Apenas III é verdadeira. 
d) Todas são verdadeiras. 
e) Todas as assertivas são falsas. 
 
Professor Marcelo Pacote - @professorpacote 22 
W W W. D OMI NAND OTI .COM.B R 
Exercício[08] (PETR/2011/CESGRANRIO) (1/2) 
No contexto da programação na plataforma Java EE, as tecnologias 
Servlets, JSP e EJB estão disponíveis. A esse respeito, considere as 
afirmativas abaixo. 
I. EJB fornece ao programador Java EE os seguintes tipos 
fundamentais: Entity Beans, Session Beans e Message Driven Beans. 
II. JPA é parte integrante da especificação EJB e serve para definir as 
interfaces de acesso local e/ou remoto de um componente EJB. 
III. Um servidor de aplicações Java EE oferece vários recursos ao 
desenvolvedor como pool de conexão, controle de transação, segurança 
e gerenciamento de recursos. 
 
Professor Marcelo Pacote - @professorpacote 23 
W W W. D OMI NAND OTI .COM.B R 
Exercício[08] (PETR/2011/CESGRANRIO) (2/2) 
IV - Uma diferença entre as tecnologias Servlets e JSP é que, ao 
contrário da segunda, a primeira permite o armazenamento do 
estado da aplicação em variáveis de sessão. 
São corretas APENAS as afirmativas 
a) I e II 
b) I e III 
c) II e III 
d) II e IV 
e) III e IV 
Professor Marcelo Pacote - @professorpacote 24 
W W W. D OMI NAND OTI .COM.B R 
Exercício[09] (TRE-BA/2010/CESPE/Analista) 
( ) O Entrerprise JavaBeans (EJB), cuja especificação mais recente 
é a da versão 2.1, define, em sistemas Java, um conjunto de 
tecnologias utilizadas do lado cliente. 
 
Professor Marcelo Pacote - @professorpacote 25 
W W W. D OMI NAND OTI .COM.B R 
Exercício[10] (TRE-CE/2012/FCC/Analista) (1/2) 
No âmbito do Enterprise Java Beans 3.0, considere: 
I. Utiliza a API JMS, facilita a quebra de acoplamento entre o cliente 
e o destino (Point-to-point ou Publish- subscriber), e é acionado de 
forma assíncrona. 
II. Tratam os eventos nas fases do ciclo de vida dos EJB, por meio 
de anotações, tais como, @PostConstruct, @PrePassivate e 
@PostActivate. 
III. Permitem que um código customizado seja aplicado para um 
EJB, interceptam a chamada do método do EJB para executar um 
código intermediário, e podem ser configurados no próprio Bean ou 
em classes externas. 
 
 
 
Professor Marcelo Pacote - @professorpacote 26 
W W W. D OMI NAND OTI .COM.B R 
Exercício[10] (TRE-CE/2012/FCC/Analista) (2/2) 
As afirmações contidas nos itens I, II e III referem-se, 
respectivamente, a 
a) Session Bean, Injeção de Dependência e Timers. 
b) Message-Driven Bean, Callback Methods e Interceptors. 
c) Session Bean, Callback Methods e Timers. 
d) Java Persistence API,Callback Methods e Message- Driven 
Bean. 
e) Java Persistence API, Message-Driven Bean e Session Bean. 
 
 
 
 
Professor Marcelo Pacote - @professorpacote 27 
W W W. D OMI NAND OTI .COM.B R 
Gabarito 
[01] a 
[02] c 
[03] c 
[04] a 
[05] b 
[06] d 
[07] b 
[08] b 
[09] errado 
[10] b 
 
 
 
 
 
 
 
 
 
 
 
Professor Marcelo Pacote - @professorpacote 28 
W W W. D OMI NAND OTI .COM.B R WWW.DOMINANDOTI .COM.BR 
 
Anexo I 
Exercícios Complementares 
 
 
Professor Marcelo Pacote – @professorpacote 
W W W. D OMI NAND OTI .COM.B R 
Para satisfazer aos objetivos de persistência e gerenciamento de 
múltiplas aplicações cliente, os EJBs (Enterprise Java Beans) são 
classifi cados como Session Beans (beans de sessão), utilizados para 
monitorar sessões com aplicações cliente individuais, ou Entity Beans 
(Beans de entidade), utilizados para lidar com dados. O contêiner 
gerencia funcionalidades genéricas, tais como linhas de execução e 
acesso a banco de dados.Em relação aos métodos de Session Beans 
ou EntityBeans, é incorreto afirmar que o método 
a) ejbRemove( ) é um método da classe EntityBean, responsável por 
apagar o conteúdo do Bean da área de armazenamento. 
Exercício [01] (MPOG/ESAF/2008) (1/2) 
Professor Marcelo Pacote - @professorpacote 30 
W W W. D OMI NAND OTI .COM.B R 
b) ejbActivate( ) é um método da classe SessionBean, utilizado quando a 
aplicação cliente faz contato como contêiner, recuperando o objeto 
SessionBean correspondente a essa aplicação cliente. 
c) ejbPassivate( ) é um método da classe SessionBean utilizado quando a 
aplicação cliente interrompe o contato com o contêiner, armazenando o 
objeto SessionBean correspondente a essa aplicação cliente. 
d) ejbStore( ) é um método da classe EntityBean responsável por colocar 
o conteúdo do Bean na área de armazenamento. 
e) setSessionContext( ) é um método da classe SessionBean chamado 
pelo contêiner quando o SessionBean é criado. 
Exercício [01] (MPOG/ESAF/2008) (2/2) 
Professor Marcelo Pacote - @professorpacote 31 
W W W. D OMI NAND OTI .COM.B R 
Exercício[02] (CGU/2008/ESAF) (1/2) 
A especificação do EJB (Enterprise Java Beans) tem como intenção 
padronizar o tratamento de problemas comuns em aplicações complexas, 
tais como persistência, integridade transacional,segurança e controle de 
concorrência. A respeito do EJB, é correto afirmar que 
a) os Entity Beans foram substituídos pela “Java Persistence API” na versão 
EJB 3.0, porém, os Entity Beans de versões 2.x podem continuar utilizando o 
“Container-Managed Persistence”(CMP) por questões de compatibilidade. 
b) os Session Beans são responsáveis por garantir que o código cliente 
possua privilégios suficientes de acesso a um EJB. 
c) as classes EJB usadas pelas aplicações estão incluídas no pacote 
javax.ejb.spi. 
 
Professor Marcelo Pacote - @professorpacote 32 
W W W. D OMI NAND OTI .COM.B R 
Exercício[02] (CGU/2008/ESAF) (2/2) 
d) um container EJB, na sua versão 3.0, possui 3 tipos 
principais de beans: Application Beans, Session Beans e Server 
Beans. 
e) os Stateless Session Beans são objetos distribuídos que não 
possuem estado, permitindo acesso concorrente aos mesmos. 
Assim, o conteúdo das variáveis de instância é preservado entre 
as chamadas de métodos. 
 
Professor Marcelo Pacote - @professorpacote 33 
W W W. D OMI NAND OTI .COM.B R 
Exercício [03] (Serpro/2013/Cespe/Desv./79) 
( ) No JBoss AS7, a carga de classes (class loading) é 
baseada em módulos, que devem definir dependência explícita 
em relação a outros módulos. 
ProfessorMarcelo Pacote - @professorpacote 34 
W W W. D OMI NAND OTI .COM.B R 
Gabarito 
[01] a 
[02] a 
[03] certo 
 
 
 
 
 
 
 
 
 
 
Professor Marcelo Pacote - @professorpacote 35

Outros materiais