Aniversário Casa do Código! 🎁 De 20 a 25 de abril, todo o site com 20% de desconto, direto no carrinho! Aproveite!😉 Nas compras acima de R$150, além do desconto, você leva um e-book gratuito! Fica de olho na sua caixa de entrada — o voucher chega por e-mail em até 8 dias.
CDI
Sumário
1 - Antes de falar de CDI...
1.1 - Boas práticas de orientação a objetos
1.2 - Lidando com o acoplamento
1.3 - Evolução das ferramentas de gestão de dependência
1.4 - O bom e velho arquivo properties
1.5 - Buscando as dependências com Spring e XML
1.6 - Buscando as dependências com Seam e anotações
1.7 - De onde viemos?
2 - O que é e para que serve a CDI
2.1 - Para onde vamos?
2.2 - Evitando que a complexidade do código sempre aumente
2.3 - Introdução à injeção de dependências
2.4 - A motivação da CDI
2.5 - O que é e para que serve uma especificação?
2.6 - A CDI é só para Java EE mesmo?
3 - Iniciando um projeto com CDI
3.1 - Olá CDI
3.2 - O que é um pacote CDI?
3.3 - Usando injeção em propriedades, construtores e métodos inicializadores
3.4 - As formas de se injetar dependências
3.5 - Recapitulando
4 - Resolvendo dependências com tipagem forte
4.1 - Lidando com a ambiguidade nas dependências
4.2 - Os qualificadores
4.3 - Alternatives: eliminando ambiguidade e tornando um bean opcional
4.4 - Prioridade: novidade da CDI 1.1, parte do Java EE 7
4.5 - Beans nomeados
4.6 - Trabalhando com herança entre beans
4.7 - Restringindo o tipo dos beans
4.8 - Resolução de dependência sob demanda e lookup programático
4.9 - Resumo do funcionamento da resolução de dependências
5 - O ciclo de vida dos objetos gerenciados pela CDI
5.1 - Métodos produtores
5.2 - Escopos da CDI
5.3 - Escopo de requisição com @RequestScoped
5.4 - Escopo de sessão com o @SessionScoped
5.5 - @ApplicationScoped: O maior escopo possível
5.6 - @ConversationScoped: Você criando seu próprio escopo
5.7 - @Dependent: O escopo padrão do CDI
5.8 - Métodos finalizadores
6 - Interceptors e Decorators
6.1 - Implementando requisitos transversais com interceptors
6.2 - Interceptadores de ciclo de vida
6.3 - Estendendo um bean existente com Decorators
6.4 - Vinculação dinâmica entre o objeto decorado e seu decorador
7 - Definindo estereótipos e diminuindo o acoplamento utilizando Eventos
7.1 - Definindo estereótipos
7.2 - Utilizando Eventos para obter um baixíssimo acoplamento
7.3 - Observadores síncronos de eventos
7.4 - Eventos e qualificadores
7.5 - Observadores assíncronos de eventos
7.6 - Injetando dependências nos observadores
8 - A relação da CDI com as demais especificações Java EE
8.1 - Relação entre CDI e EJB/JPA
8.2 - Relação entre CDI e JSF
8.3 - Relação entre CDI e JMS
8.4 - Empacotando as melhorias
9 - Extensões CDI
9.1 - Do Seam à CDI
9.2 - Extensões portáveis disponíveis
9.3 - Criando nossas extensões
9.4 - Extensão portável: usando convenção em vez de configuração
9.5 - Extensão não portável: eventos assíncronos fora do Java EE
10 - Executando CDI em diferentes ambientes
10.1 - Executando CDI em servlet containers
10.2 - Executando CDI a partir de uma classe main
10.3 - E como testar uma aplicação CDI?
10.4 - Desenvolvendo testes de integração com persistência