Sobes.tech
Junior — Middle

@Component ilə işarələnmiş sinifin müxtəlif hissələrində @Autowired annotasiyasından istifadə edildikdə, eyni komponent nümunəsinin yaradılması təmin edilirmi?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, Spring Framework-də @Autowired anotatsiyasından istifadə edərək asılılıqları in'ektsiya edərkən, @Component ilə işarələnmiş sinifdə, standart olaraq, bir komponent nümunəsi (Singleton scope) yaradılır. Bu, sinifin müxtəlif yerlərində, eyni komponent @Autowired vasitəsilə in'ektsiya olunduqda, eyni nümunənin istifadə olunacağı deməkdir.

Məsələn:

@Component
public class MyService {
    @Autowired
    private MyRepository repo1;

    @Autowired
    private MyRepository repo2;

    public void doSomething() {
        // repo1 və repo2 eyni MyRepository nümunəsinə istinad edir
    }
}

Beləliklə, Spring komponentlərin həyat dövrünü idarə edir və eyni nümunənin təkrar istifadəsini təmin edir, əgər başqa cür göstərilməyibsə (məsələn, @Scope anotatsiyası ilə).