Skip to content

apuntesdejava/jakarta-cdi-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Ejemplos de Jakarta CDI

Aquí mostraré ejemplos de Jakarta Contexts and Dependency Injection

1. Implementando Dependency Inversion Principle

Introducción a Inyección de Dependencias con Jakarta EE - Jakarta CDI

Debemos definir la interfaz que usaremos.

Interfaz GreetingService

package com.example.jakarta.cdi;

public interface GreetingService {
  String sayHello(String name);
}

Y a partir de ella declaramos nuestras clases especializadas.

Clase EnglishGreetingService

package com.example.jakarta.cdi.impl;

import com.example.jakarta.cdi.GreetingService;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Named;

@ApplicationScoped
@Named("English")
public class EnglishGreetingService implements GreetingService {

  @Override
  public String sayHello(String name) {
    return "hello " + name;
  }
}

Clase SpanishGreetingService

package com.example.jakarta.cdi.impl;

import com.example.jakarta.cdi.GreetingService;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Named;
import jdk.jfr.Name;

@ApplicationScoped
@Named("Spanish")
public class SpanishGreetingService implements GreetingService {

  @Override
  public String sayHello(String name) {
    return "hola "+name;
  }
}

Y se invoca de la siguiente manera Clase de prueba GreetingServiceTest

  @Inject
  @Named("English")
  GreetingService englishGreetingService;

  @Inject
  @Named("Spanish")
  GreetingService spanishGreetingService;

About

Ejemplos de Jakarta CDI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages