Junior — Middle
Spring Framework kapsamında bağımlılık enjeksiyonunun hangi yöntemleri vardır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Spring Framework'te bağımlılık enjeksiyonu (Dependency Injection, DI) aşağıdaki temel yöntemlerle gerçekleştirilebilir:
- Yapıcı (Constructor) aracılığıyla — bağımlılıklar sınıfın yapıcı parametreleri aracılığıyla geçirilir. Bu en önerilen yöntemdir çünkü bağımlılıkları açık hale getirir ve testi kolaylaştırır.
@Component
public class Service {
private final Repository repository;
public Service(Repository repository) {
this.repository = repository;
}
}
- Setterlar aracılığıyla (Setter Injection) — bağımlılıklar nesne oluşturulduktan sonra setter metodlarıyla ayarlanır.
@Component
public class Service {
private Repository repository;
@Autowired
public void setRepository(Repository repository) {
this.repository = repository;
}
}
- Alanlar aracılığıyla (Field Injection) — bağımlılıklar doğrudan alanlara
@Autowiredanotasyonu kullanılarak enjekte edilir.
@Component
public class Service {
@Autowired
private Repository repository;
}
Bu yöntem daha az tercih edilir çünkü testleri zorlaştırır ve bağımlılıkların tersine çevrilmesi ilkesini ihlal eder.
Tüm bu yöntemler Spring tarafından desteklenir ve uygulama bileşenlerinin bağımlılıklarını esnek bir şekilde yönetmeye olanak tanır.