Introdução ao EJB (Enterprise Java Beans)
O EJB é um componente da plataforma JEE que roda em um Servidor de Aplicação, e consiste em fornecer um desenvolvimento para sistemas corporativos, com componentes distribuídos, transacionais, seguros e portáveis. Houve uma grande mudança da versão 2 para a 3 que foi a introdução a anotações Java.
Para usarmos um EJB sempre precisamos de um Servidor de Aplicação (Ex. JBoss AS 7, GlassFish, WebLogic, Geronimo, etc).
Para baixar o JBoss AS 7 podemos ir no seguinte link: http://jbossas.jboss.org/downloads
Podemos baixar a opção JBoss AS 7.1.1.Final (versão ZIP).
E usar a IDE Eclipse para podemos fazer alguns estudos com EJB.
Baixar a opção Eclipse IDE for Java EE Developers no link:
http://www.eclipse.org/downloads/eclipse-packages/
E recomendo nesse estudo a versão Java 7, para o Java 8 utilize a versão de Servidor de Aplicação Wildfly também da Red Hat.
Até a versão 7.1.1 o servidor se chamava JBoss Application Server (JBoss AS), após essa versão foi escolhido o nome wildfly.
Descompactamos o JBoss AS e informamos na aba Servers do Eclipse que iremos utiliza-lo, porém talvez não mostre a opção JBoss v7, que é o nosso caso, então clicamos em Download Additional Server Adapters para exibir mais opções, e escolhemos JBoss AS Tools e instalamos essa opção e reiniciamos o eclipse. Agora deve aparecer a opção JBoss AS 7.1 e apontamos para a pasta do JBoss que baixamos e descompactamos, e escolhemos a versão do Java 7.
Ao “Startar” o servidor JBoss com sucesso, podemos acessar sua interface gráfica através do link abaixo:
Após criar seu primeiro projeto coloque o JBoss no classpath do projeto, indo em Java Build Path > na aba Libraries > botão Add Library > escolha Server Runtime e o JBoss 7.
Anotações:
Quando o EJB Container acha essas anotações, ele registra esse EJB dentro de um registro disponível no servidor, esse registro se chama JNDI e o servidor usa esse registro por baixo dos panos para organizar os componentes que ele administra.
@Stateless – Transforma a classe em um EJB.
@Inject – Injeção de Dependência.