Sobes.tech
Junior — Middle

¿Cuáles son los métodos de inyección de dependencias en el marco de Spring Framework?

sobes.tech AI

Respuesta de la IA

En Spring Framework, la inyección de dependencias (Dependency Injection, DI) se puede implementar de las siguientes maneras principales:

  1. A través del constructor — las dependencias se pasan mediante los parámetros del constructor de la clase. Este es el método más recomendable, ya que hace que las dependencias sean explícitas y facilita las pruebas.
@Component
public class Service {
    private final Repository repository;

    public Service(Repository repository) {
        this.repository = repository;
    }
}
  1. A través de setters (Setter Injection) — las dependencias se establecen mediante métodos setters después de crear el objeto.
@Component
public class Service {
    private Repository repository;

    @Autowired
    public void setRepository(Repository repository) {
        this.repository = repository;
    }
}
  1. A través de campos (Field Injection) — las dependencias se inyectan directamente en los campos usando la anotación @Autowired.
@Component
public class Service {
    @Autowired
    private Repository repository;
}

Este método es menos preferido, ya que dificulta las pruebas y viola el principio de inversión de dependencias.

Todos estos métodos son compatibles con Spring y permiten gestionar de manera flexible las dependencias de los componentes de la aplicación.