Spring Bean Yaşam Döngüsü – 2 BeanFactoryAware – BeanNameAware Nedir?

Spring Core
Spring Dersleri

Spring Framework Dersleri‘ne devam ediyoruz.

Önceki Dersimizde (Bknz: Spring Bean Yaşam Döngüsü – 1 InitializingBean – DisposableBean Nedir?) konularına bakmıştık. Bir Spring Bean’ninin yaşam döngüsüne bakmaya devam ediyoruz.

BeanFactoryAware

Spring Konteyner tarafından Bean’e erişmek için setBeanFactory () yöntemi kullanırız. Bean’i oluşturan Spring Konteynarı üzerinden erişmenizi sağlar.

BeanNameAware

Oluşturduğumuz Beanimizin Spring tarafından ulaşılabilmesi ve kullanılabilmesi sağlanmaktadır. Bu oluşturduğumuz bean yönetilen fasulye bir nesne interface üzerinden kullanılabilmektedir.

public class Mesaj  implements BeanNameAware, BeanFactoryAware{
       
      private String msg;

       public String getMsg() {
              return msg;
       }

       public void setMsg(String msg) {
              this.msg = msg;

       }

       @Override
       public void setBeanFactory(BeanFactory beanFactory) throws BeansException {
               System.out.println("Bean Factory " + beanFactory);
             
       }

       @Override
       public void setBeanName(String name) {
               System.out.println("Bean Adı " + name);
             

       }
}

Mesaj Bean’imizi oluşturduk ve ardından Spring konfigürasyonu için xml dosyamızı oluşturalım.

<bean id="mesaj" class="com.burakkutbay.bean.Mesaj">
      <property name="msg" value="Merhaba" />
</bean>

Çalıştıracak Main classımızı oluşturalım.

public class HelloMain {
    public static void main(String[] args) {
             ApplicationContext beanFactory = new ClassPathXmlApplicationContext(
                           "springcontext.xml");
        Mesaj sonuc = (Mesaj) beanFactory.getBean("mesaj");
        System.out.println(sonuc.getMsg());
    }
}

Sonucunda çıktı.

Bean Adı Mesaj
Bean Factory org.springframework.beans.factory.support.DefaultListableBeanFactory@26c7tdd1: defining beans [mesaj]; root of factory hierarchy
Merhaba

 

Önceki Ders: Bean Yaşam Döngüsü – 1 Spring Dersleri Sonraki Ders: PostConstruct ve PreDestroy Kullanımı

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Burak KUTBAY 2010 - 2019
%d blogcu bunu beğendi: