Spring Ders07 - Bean Names
Kurumsal uygulamalarda kullanıcılara aynı beane erişebilmeleri için farklı isimler verilebilir. Bu name parametresiyle sağlanır.
<bean id="t" name="t1,t2;t3 t4" class="...."></bean> |
Bir beane aynı zamanda alias name (takma isim) de verilebilir.
<bean id="t" class="...."></bean> <alias name="t" alias="z"/> |
Dikkat edilmesi gereken bazı noktalar
- Beane hem id parametresiyle hemde name parametresiyle erişilebilir.
- name parametresine birden fazla argüman verebilmek için argümanlar arasında; virgül (,), noktalı virgül (;) veya boşluk ( ) kullanılabilir.
- id ve name argümanlarıyla aynı beane erişim yapılmaktadır. Dolayısıyla birisi üzerinden yapılacak değişiklik hepsini kapsayacaktır.
Örnek program aşağıda verilmiştir.
Main.java
package test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Main { public static void main(String[] args) { ApplicationContext context= new ClassPathXmlApplicationContext("applicationContext.xml"); Test t=(Test)context.getBean("t"); Test t1=(Test)context.getBean("t1"); Test t2=(Test)context.getBean("t2"); Test t3=(Test)context.getBean("t3"); Test t4=(Test)context.getBean("t4"); t.yazdir(); t1.yazdir(); t2.yazdir(); t3.yazdir(); t4.yazdir(); t4.setAd("cetin"); System.out.println("\n----- Ad değiştirildi -----\n"); t.yazdir(); t1.yazdir(); t2.yazdir(); t3.yazdir(); t4.yazdir(); } }
Test.java
package test; public class Test { private String ad; public Test(){} public String getAd() { return ad; } public void setAd(String ad) { this.ad = ad; } public void yazdir(){ System.out.println("Ad\t:\t"+ad); } }
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="t" name="t1,t2;t3 t4" class="test.Test"> <property name="ad" value="enes"/> </bean> </beans>
Yorumlar
Yorum Gönder