Spring IoC Container & Bean Yaşam Döngüsü
Java nesnelerinin (Bean) doğumundan ölümüne kadar tüm hayatını Spring'in yönetmesidir.
5 Yaşındaki Çocuğa Anlatır Gibi (Analoji)
Apartmanın merkezi yönetim sistemidir. Her daire sahibi kendi kalorifer kazanını kurmaz; apartman yöneticisi (Spring IoC) merkezi ısıtmayı herkese bağlar.
Teknik ve Profesyonel Tanımı
ApplicationContext tarafından yönetilen nesnelere "Spring Bean" denir. Yaşam döngüsü: Instantiation -> Populate Properties -> BeanNameAware -> PostProcessBeforeInitialization -> @PostConstruct -> PostProcessAfterInitialization -> Ready -> @PreDestroy -> Destruction.
Mülakatta Ne Demelisin? (Kurtarıcı Altın Cevap)
"Spring IoC Container, uygulamanın nesnelerini (Bean) oluşturan, yapılandıran ve bağımlılıklarını (@Autowired ile) yöneten mekanizmadır. Varsayılan scope Singleton'dır. @PostConstruct ile başlatma, @PreDestroy ile kaynak temizleme adımları yönetilir."
Java (Spring Boot) Kod Örneği
@Service
public class UserService {
private final UserRepository userRepository;
// Constructor Injection (Best Practice):
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}
}
Alan bazlı (@Autowired private UserRepository repo;) injection kullanmak; sınıfın test edilmesini zorlaştırır, constructor injection tercih edilmelidir.
İlgili Diğer Konular
Spring @Transactional Proxy Mekanizması & Rollback
Metot içindeki bir veritabanı işlemi patlarsa yapılan her şe...