A especificação EJB está no centro da plataforma J2EE, definindo um modelo completo para construir componentes da aplicação Java comercial, baseados no servidor distribuído. Dois tipos de EJB são descritos a seguir: I? São transitórios e encapsulam a lógica comercial em uma aplicação Java. Podem ter estado, mantendo as conexões entre as sucessivas interações com um cliente, ou sem estado, onde cada chamada sucessiva do componente é tratada como uma atividade nova. II? São projetados para encapsular dados permanentes em um armazenamento de dados, encontrados em uma tabela de banco de dados. Fornecem serviços automatizados para garantir que a exibição baseada em objeto desses dados permanentes fique sincronizada com os dados reais que residem no banco de dados. Esses tipos são representados por componentes conhecidos, respectivamente, por: