[Dica rápida de CDI] - Observando o início

As vezes precisamos executar alguns comandos quando nossa aplicação é iniciada, portanto quem usa algum framework moderno consegue saber quando sua app subiu e com o CDI não é diferente. date: ‘2022-08-30’ CDI contém uma funcionalidade de ajuda na implementação do padrão de projeto Observer. A Própria especificação usa esse padrão em suas rotinas internas, vamos usar umas dessas chamadas para observarmos quando o CDI for carregado ao levantar o servidor de aplicação, com o código abaixo fica fácil:...

August 30, 2022 · 2 min · 246 words · Mattheus Cassundé

Injeção de dependência Dinâmica

Hoje vou falar um pouco sobre injeção de dependência sob demanda. E comum encontrarmos beans ou controllers ou qualquer outra classe com várias injeções de dependências e na maioria das vezes uma boa parte dessas injeções são usadas em momentos pontuais da rotina. Quando a classe que contém esses injects e instanciada, a CDI vai se virar para criar e disponibilizar todas as suas dependências, já imaginou se em cada uma das dependências existir uma lógica no seu construtor?...

August 28, 2022 · 1 min · 198 words · Mattheus Cassundé

Qualificadores no CDI

INTRODUÇÃO Vamos começar falando um pouco sobre os qualificadores da CDI, como muitos devem saber a CDI a uma especificação JAVA que deu muito poder e extensividade a Linguagem, não vou entrar no mérito de falar sobre a especificação, apenas sobre a funcionalidade de Qualificadores. QUALIFICADORES OU QUALIFIER Imagine que temos uma interface com várias implementações, uma das utilidades dos qualifier é informarmos qual implementação vamos usar, se liga no exemplo....

August 28, 2022 · 3 min · 590 words · Mattheus Cassundé

Stereotype no CDI

CONHECENDO Hoje vou escrever um pouco sobre Stereotype, uma funcionalidade bem simples de usar e entender. No nosso dia-a-dia as vezes criamos várias anotações para várias situações diferentes como por exemplo um interceptor que audita todas as chamadas de métodos para saber se usuário pode ou não usar aquela ação ou simplesmente logar alguma informações sobre o método em execução, logo colocaríamos todas as anotações como no exemplo abaixo: @Named @Audit @Log public class CheckoutBean{ public void anyAction(){ ....

August 28, 2022 · 2 min · 220 words · Mattheus Cassundé