Enterprise Java Beans


Conceito
    Já faz tempo que a plataforma Java prega alguns conceitos importantíssimos no desenvolvimento de componentes de software, são eles: baixo acoplamento, escalabilidade, disponibilidade, integridade, iteroperabilidade, além de outros. 

A especificação EJB( Enterprise JavaBeans ) é de longe a especificação mais importante da plataforma JEE, promovendo toda a infraestrutura necessária para o desenvolvimento de componentes distribuídos, muiti-tiers, escaláveis e orientados a objeto.

Tipos
    Essa especificação possui 3 (três) tipos fundamentais que são: Entity beans, Session Beans e Message Driven Beans:
    Session Beans
    Executa uma tarefa para o cliente. Pode manter o estado durante uma sessão com o cliente (Subtipo “Stateful”) ou não (Subtipo “Stateless”).
     Message Driven Beans
    Processa mensagens de modo assíncrono entre os ejb’s e cuja API de mensagens é Java Message      Service (JMS).
     Entity Beans
     Representa um objeto que vai persistir numa base de dados ou outra unidade de armazenamento.
Interfaces de Acesso
     Para acessar os EJB é necessário definir as suas interfaces de acesso que são: Interface Local, Interface Remota ou Ambas. A Interface Local define o acesso ao bean somente no computador onde está sendo executado o servidor de aplicação. A Interface Remota define o acesso ao bean somente a computadores externos. E ambas define acesso ao bean tanto do computador com o servidor de aplicação ou computadores externos.

A evolução dos EJB

    Nas primeiras versões do JEE, os componentes EJBs eram tidos pelos programadores como componentes dificeis de serem programados,  não era por menos, ainda na sua versão 2.1, o uso extensivo de XML, associado a obrigatoriedade de se implementar várias interfaces, fez com que se escolhesse essa tecnologia apenas em casos mais críticos.
    Com relação a evolução dessa tecnologia, podemos dizer que ela teve sua principal transformação na versão 3.0, com as principais melhorias:
·    Uso Extensivo de anotações, reduzindo o número de classes e interfaces em que o programador era obrigado a implementar;
·    Uso opcional do deployment descritor;
·    Filosofia de “configuração por excessão”, assumindo configurações predefinidas;
·    A “Business Interface” necessária aos session beans,  não necessita mais ser de um dos tipos: EJBObject, EJBLocalObject ou java.rmi.Remote, podendo ser apenas uma simples Interface Java;
·    Simplificação da persistencia de entidades através da Java Persistence API( JPA );
    Atualmente a tecnologia EJB encontra-se na versão 3.1, sob a especificação JSR 318, lançada oficialmente no dia 10 de dezembro de 2009, que também trousse inúmeras facilidades ao desenvolvimento desses componentes, como por exemplo:
·    Interfaces locais opcionais;
·   O empacotamento e deployment de EJBs podem ser feitos diretamentes em arquivos WAR sem a necessidade de criação de um EJB-JAR;
·   A possibilidade de usar EJBs de dentro de aplicações Java SE(Embeddable API);
·   Possibilidade de chamar de forma assincrona métodos de um “Session Beans”;
·   Criação automática de “EJB Timers”;
·   As expressões utilizadas para configurar EJB Timers agora são baseadas na classe Calendar;
·   Uma sintaxe global e portável para se fazer lookup de componentes EJB;

Um Exemplo do uso de Enterprise JavaBeans 3.1 utilizando Netbeans



Livros recomendados



Referencias
– Site Oficial
– Site Oficial JCP
-Wikipedia EJB

Data: 14 de Setembro de 2010
Autor: Natanael Fonseca

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s