1
resposta

Duvida sobre EJB x CDI

estava recentemente acompanhando o curso do Alura, onde eu vi o CDI e EJB, porém fiquei com algumas duvidas sobre definir cada um, alguém poderia me ajudar? sei que o CDI usa Injeção de dependência e isso ajuda porque sempre não fico dando um new no Objeto, já usando EJB usa um Servidor mais completo ex: Jboss AS e isso ele deixa que o meu servidor fique responsável pelas transações e etc... acho que é isso.

1 resposta

O EJB tem dois grandes tipos de componentes:

Os Session Beans servem para executar uma tarefa para um client, e podem ser Stateful (grava o estado daquela sessão de processamento e novas requisições de um cliente caindo para esse ejb continuam do estado onde parou) ou stateless (onde não grava o estado).

O ouro tipo são os Message Driven Beans, que dão suporte ao processamento de fila de mensagens assíncronas através de JMS (Java Message Service).

Existia um outro tipo de EJB chamado Entity Beans para representar entidades, mas a partir do EJB 3.0 isso foi integrado ao JPA.

Já o CDI, ajuda principalmente no fato de facilitar o desenvolvimento e no desacoplamento de dependências entre objetos, deixando mais fácil as manutenções futuras também.

Abraço.