Junior — Middle
Ce metode de injectare a dependențelor există în cadrul Spring Framework?
sobes.tech AI
Răspuns de la AI
În Spring Framework, injecția de dependențe (Dependency Injection, DI) poate fi implementată prin următoarele modalități principale:
- Prin constructor — dependențele sunt transmise prin parametrii constructorului clasei. Aceasta este metoda cea mai recomandată, deoarece face dependențele explicite și facilitează testarea.
@Component
public class Service {
private final Repository repository;
public Service(Repository repository) {
this.repository = repository;
}
}
- Prin setter-uri (Setter Injection) — dependențele sunt setate prin metode setter după crearea obiectului.
@Component
public class Service {
private Repository repository;
@Autowired
public void setRepository(Repository repository) {
this.repository = repository;
}
}
- Prin câmpuri (Field Injection) — dependențele sunt injectate direct în câmpuri folosind adnotarea
@Autowired.
@Component
public class Service {
@Autowired
private Repository repository;
}
Această metodă este mai puțin preferată, deoarece complică testarea și încalcă principiul inversiunii dependențelor.
Toate aceste metode sunt suportate de Spring și permit gestionarea flexibilă a dependențelor componentelor aplicației.