EJB ou Enterprise JavaBeans é um dos principais componentes da plataforma J2EE (Java 2 Enterprise Edition). É um componente do tipo servidor que executa no container do servidor de aplicação. Os principais objectivos da tecnologia EJB são fornecer um rápido e simplificado desenvolvimento de aplicações Java baseado em componentes distribuídas, transacionais, seguras e portáveis.
Apesar da semelhança nos nomes, os JavaBeans não devem ser confundidos com os Enterprise JavaBeans, ou EJBs, que são componentes utilizados em servidores e são parte da plataforma Java EE.
A plataforma J2EE providencia algumas facilidades dedicadas à camada de lógica de negócio e para o acesso a banco de dados. Através do EJB o programador utiliza a infraestrutura do servidor de aplicação voltada para o desenvolvimento de aplicações de missão crítica (de alta importância para a empresa) e de aplicações empresariais em geral.
Tipos de EJB's
O componente EJB possui 3 (três) tipos fundamentais que são: Entity beans, Session Beans e Message Drive 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 Drive 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.