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:
- 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;
}
}
- 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;
}
}
- 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.