Sobes.tech
Junior — Middle

Asılılığın injeksiya olunmalı olduğunu göstərmək üçün @Autowired qeydinin istifadəsi məcburidir?

sobes.tech Süni İntellekt

AI-dan cavab

Spring-də @Autowired anotasiya istifadəsi, asılılığın enjekte edilməli olduğunu göstərməyin yeganə yolu deyil. Bu, komponentləri növ üzrə avtomatik əlaqələndirmək üçün xidmət edir.

Ancaq, Spring Framework 4.3-dən başlayaraq, əgər sinifdə tək bir konstruktor varsa, ona @Autowired anotasiya qoymağa ehtiyac yoxdur — Spring avtomatik olaraq asılılıqları bu konstruktor vasitəsilə enjekte edəcək.

Həmçinin, digər asılılıq enjekteetmə üsulları da mövcuddur:

  • XML konfiqurasiya vasitəsilə
  • @Inject (JSR-330) anotasiya vasitəsilə
  • Aydın şəkildə beanlərin yaradılması və asılılıqların ötürülməsi vasitəsilə

Beləliklə, @Autowired rahatdır və tez-tez istifadə olunur, amma bütün hallarda məcburi deyil.