Sobes.tech
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:

  1. 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;
    }
}
  1. 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;
    }
}
  1. Sahələr vasitəsilə (Field Injection) — asılılıqlar birbaşa sahələrə @Autowired annotasiyası 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.