Sobes.tech
Junior — Middle

Spring-də asılılıqların injeksiyası anlayışını izah edin və necə həyata keçirildiyini

sobes.tech Süni İntellekt

AI-dan cavab

Spring-də Asılılıq İnjeksiyası (Dependency Injection, DI) obyektlərin asılılıqlarını idarə etməyin bir yoludur, burada Spring konteyneri obyektlərin yaradılması və əlaqələndirilməsindən məsul olur, obyekt özü isə öz asılılıqlarını yaratmır və ya axtarmır.

Spring-də DI-nin əsas tətbiq üsulları:

  1. Konstruktor vasitəsilə — asılılıqlar konstruktor parametrləri vasitəsilə ötürülür.
  2. Setterlər vasitəsilə — asılılıqlar setter metodları ilə təyin olunur.
  3. @Autowired annotasiyası ilə sahələr vasitəsilə — Spring lazım olan beanları avtomatik olaraq injektsiya edir.

Annotasiya ilə injektsiya nümunəsi:

@Component
public class UserService {
    private final UserRepository userRepository;

    @Autowired
    public UserService(UserRepository userRepository) {
        this.userRepository = userRepository;
    }
}

Burada Spring, UserRepository nümunəsini avtomatik olaraq yaradır və UserService konstruktoruna ötürür. Bu, asılılıqların tətbiqini dəyişməyi asanlaşdırır, testləri sadələşdirir və kodun modulluğunu artırır.