Burak / Kutbay
Menü

Spring Dersleri – Autowired Anotasyonu Kullanımı

337 kelime · 2 dk okuma

Bu yazıda

Spring Dersleri 'ne devam ediyoruz. Bu yazıda Spring Autowired anotasyonu nedir? Nasıl kullanılır? Spring Autowired örneği yaparak inceleyeğiz. Önceki dersimizde Xml konfigürasyonu yaparak Autowiring konusunu işlemiştik. Bu yazıda ise Anotasyonu kullanarak bir örnek yapıp…

Spring JdbcTemplate görseli
FIG_001 · Spring Dersleri – Autowired Anotasyonu Kullanımı

Spring Dersleri‘ne devam ediyoruz.

Bu yazıda Spring Autowired anotasyonu nedir? Nasıl kullanılır? Spring Autowired örneği yaparak inceleyeğiz. Önceki dersimizde Xml konfigürasyonu yaparak Autowiring konusunu işlemiştik. Bu yazıda ise Anotasyonu kullanarak bir örnek yapıp yapısına bakacağız.

@Autowired anotasyonu sayesinde bir bean içerisindeki değerleri başka beanin içerisine enjekte edebilir değerlerini koruyarak kullanabiliriz. @Autowired anotasyonunu bir değişken, setter ya da yapılandırıcı metot üzerinde kullanılabilmekteyiz. Bir senaryo yaparak @Autowired kullanımına bakalım.

Kod
public class Uye {
    
    private String ad;
    private String soyad;
    private String kullaniciAdi;

    @Autowired
    private Adres adres;
 
    public String getAd() {
        return ad;
    }
 
    public void setAd(String ad) {
        this.ad = ad;
    }
 
    public String getSoyad() {
        return soyad;
    }
 
    public void setSoyad(String soyad) {
        this.soyad = soyad;
    }
 
    public String getKullaniciAdi() {
        return kullaniciAdi;
    }
 
    public void setKullaniciAdi(String kullaniciAdi) {
        this.kullaniciAdi = kullaniciAdi;
    }

    public Adres getAdres() { 
        return adres; 
    } 

    public void setAdres(String adres) { 
        this.adres = adres; 
    }
    
}

Uye sınıfımızda Adres sınıfının @Autowired yaparak Uye sınıfına inject ettik.

Kod
public class Adres {
 
   private String sokak;
   private String mahalle;
   private String cadde;
 
    public String getSokak() {
        return sokak;
    }
 
    public void setSokak(String sokak) {
        this.sokak = sokak;
    }
 
    public String getMahalle() {
        return mahalle;
    }
 
    public void setMahalle(String mahalle) {
        this.mahalle = mahalle;
    }
 
    public String getCadde() {
        return cadde;
    }
 
    public void setCadde(String cadde) {
        this.cadde = cadde;
    }
}

Adres sınıfımızı tanımladık. Şimdi çalıştırıcı sınıfımızı yapalım.

Kod
public class App {
  public static void main(String[] args) {
     ApplicationContext context=new ClassPathXmlApplicationContext("spring.xml");
       Bolum bolum= (Adres) context.getBean("adres");
       System.out.println("Adres :"+adres.getMahalle()+" Uye Adı:"+uye.getUye().getAd());
    }
  }

Xml konfigürasyonumuzu yapılandıralım. Verilerimizi tanımlayalım.

Kod
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context.xsd">

	<context:annotation-config />

	<bean id="uye"
		class="com.burakkutbay.Uye">
		<property name="ad" value="Burak Kutbay" />
		<property name="soyad" value="80" />
                <property name="kullaniciadi" value="burakkutbay" />
	</bean>

	<bean id="adres"
		class="com.burakkutbay.Adres">
		<property name="sokak" value="Java" />
		<property name="mahalle" value="Spring" />
                <property name="cadde" value="Hibernate" />
	</bean>

</beans>

<context:annotation–config /> diyerek Java sınıflarımız içerisinde kullanacağımız Autowired anotasyonunu aktif hela getiriyoruz. @Autowired anotasyonu sayesinde Uye sınıfından bilgileri istediğimizde adres bilgileride gelmiş olmaktadır.

Önceki Ders: Autowiring Nedir? Kullanımı Spring Dersleri Sonraki Ders: Bean Scope Kullanımı

Etiketler · 4

Yorumlar · 4

      1. App class ının içinde Bolum demişsiniz ama system.out.println içinde adres ve uye neslerinin feature larını print etmişsiniz.

Yorum yaz

E-posta adresin yayımlanmaz. Zorunlu alanlar * ile işaretli.