【Spring学習ノート3】-注入に依存する2つの方法


           :         。    , Spring       setter           。    , Spring                。
      Spring       setter           。        、  ,   Spring          。                  。
  ,        。
public interface Person {
	//           
	public void useAxe();
}
public interface Axe {
	public String chop();
}
   Person
public class Chinese implements Person {
	private Axe axe;
	public void setAxe(Axe axe) {
		this.axe = axe;
	}
	public void ueAxe() {
		System.out.println(axe.chop());
	}
}
   Axe    
public class StoneAxe implements Axe {
	public String chop() {
		return “      ”;
	}
}
bean


   
       
   
 

public class BeanTest {
	public static void main (String [] args) throws Exception {
		ApplicationContext ctx = new ClassPathXmlApplicationContext(“bean.xml”);
		Person p = ctx.getBean(“Chinese”,Person.class);
		p.useAxe();
	}
}
     ,  :      。
     Person useAxe     ,            Axe  ,             Person   Axe       。Person         Axe       ,      Axe     。
    , Spring                。         ,       。
 Chinese       :
public class Chinese implements Person {
	private Axe axe;
	public Chinese() {
	}
	//              
	public Chinese(Axe axe) {
		this.axe = axe;
	}
	public void ueAxe() {
		System.out.println(axe.chop());
	}
}
  ,              。  :


   
       
   
 

                 。       :  Person   Axe       -                   Beansetter        ;                 , Bean       ,            。