Junior — Middle
Akými spôsobmi je možné implementovať injekciu závislostí pre Beans v aplikácii?
sobes.tech AI
Odpoveď od AI
V Jave je možno implementovať závislosť (Dependency Injection, DI) pre Beans viacerými spôsobmi:
- Cez konštruktor — závislosti sa odovzdávajú do konštruktora triedy. Toto je najpreferovanejší spôsob, pretože umožňuje vytváranie nemenných objektov a uľahčuje testovanie.
public class Service {
private final Repository repo;
public Service(Repository repo) {
this.repo = repo;
}
}
- Cez setre (Setter Injection) — závislosti sa nastavujú pomocou setter metód po vytvorení objektu.
public class Service {
private Repository repo;
public void setRepository(Repository repo) {
this.repo = repo;
}
}
- Cez polia (Field Injection) — závislosti sa injektujú priamo do polí triedy pomocou anotácií, napríklad
@Autowiredv Spring.
public class Service {
@Autowired
private Repository repo;
}
- Cez továrenské metódy alebo konfiguračné triedy — vytváranie a prepojenie Beans sa deje v konfiguračných triedach alebo XML.
Každý spôsob má svoje výhody a nevýhody, ale v moderných aplikáciách sa najčastejšie používa konštruktorová injekcia alebo Spring anotácie na automatické prepojenie závislostí.