Merhaba arkadaşlar, bu yazımda @Autowired notasyonunu anlatacağım.
@Autowired notasyonu bir bean içerisindeki değerleri başka bir bean içerisinde bulunan uygun nesneye değerler değişmeyecek şekilde enjekte eder. @Autowired notasyonu yapılandırıcılar veya setter metotlar üzerinde tanımlanabilir. Şimdi bir örnek üzerinde konuyu daha iyi anlayalım:
Address.java
1 2 3 4 5 |
public class Address { private int no; private String street; //Getters and Setters |
Person.java
1 2 3 4 5 6 7 8 9 10 11 12 |
public class Person { private int id; private String name; @Autowired private Address address; public void print() { System.out.println("Id =>"+id+" Name =>"+name+" Address No =>"+address.getNo()+" Street =>"+address.getStreet()); } //Getters and Setters |
Test.java
1 2 3 4 5 6 7 8 9 10 |
public class Test { public static void main(String[] args) { ApplicationContext applicationContext=new ClassPathXmlApplicationContext("_014_application.xml"); Person person=applicationContext.getBean("person",Person.class); person.print(); ((ClassPathXmlApplicationContext)applicationContext).close(); } } |
Application.xml
1 2 3 4 5 6 7 8 9 10 |
<context:annotation-config/> <bean id="person" class="_014_anno_autowired.Person"> <property name="id" value="1"/> <property name="name" value="Furkan"/> </bean> <bean id="address" class="_014_anno_autowired.Address"> <property name="no" value="81"/> <property name="street" value="Bilinmez Caddesi"/> </bean> |
<Context:annotation-config/> ile @Autowired notasyonunu aktif hale getiriyoruz.
Çıktı:Bu yazımı burada bitiriyorum diğer yazılarımda görüşmek üzere…