Junior — Middle
Spring Framework çərçivəsində asılılıqların inyeksiyasının hansı metodları mövcuddur?
sobes.tech Süni İntellekt
AI-dan cavab
Spring Framework-da, asılılıqları (Dependency Injection, DI) aşağıdakı əsas üsullarla həyata keçirmək mümkündür:
- Konstruktor vasitəsilə — asılılıqlar sinifin konstruktorunun parametrləri vasitəsilə ötürülür. Bu ən tövsiyə olunan üsuldur, çünki asılılıqları açıq edir və test etməyi asanlaşdırır.
@Component
public class Service {
private final Repository repository;
public Service(Repository repository) {
this.repository = repository;
}
}
- Setterlər vasitəsilə (Setter Injection) — asılılıqlar obyekt yaradıldıqdan sonra setter metodları vasitəsilə təyin edilir.
@Component
public class Service {
private Repository repository;
@Autowired
public void setRepository(Repository repository) {
this.repository = repository;
}
}
- Sahələr vasitəsilə (Field Injection) — asılılıqlar birbaşa sahələrə
@Autowiredannotasiyası ilə enjekte edilir.
@Component
public class Service {
@Autowired
private Repository repository;
}
Bu üsul daha az tövsiyə olunur, çünki test etməyi çətinləşdirir və asılılıqların tərs çevrilməsi prinsipini pozur.
Bütün bu üsullar Spring tərəfindən dəstəklənir və tətbiq komponentlərinin asılılıqlarını çevik idarə etməyə imkan verir.