测试2中的例子
      
     
     
     
    
     
      package
     
     
      pojo;
     
     
     
    
     
     
    
     
      import
     
     
      org.springframework.context.ApplicationContext;
     
     
     
    
     
      import
     
     
      org.springframework.context.support.ClassPathXmlApplicationContext;
     
     
     
    
     
     
    
     
      public
     
     
     
     
      class
     
     
      Text {
      
     
     
     
    
     
     
     
      public
     
     
     
     
      static
     
     
     
     
      void
     
     
      main(String arg[]){
      
     
     
     
    
     
     
     
     
     
      ApplicationContext ac =
     
     
      new
     
     
      ClassPathXmlApplicationContext(
     
     
      “applicationContext.xml”
     
     
      );
     
     
     
    
     
     
     
     
     
      Person xiao = (XiaoMing)ac.getBean(
     
     
      “xiaoming”
     
     
      );
     
     
     
    
     
     
     
     
     
      xiao.eat();
     
     
     
    
     
     
     
      }
     
     
     
     
     
    
     
      }
     
     
     
    
     
      Spring
      
       构造器注入
      
     
     
     
    
     
      
       很快晓峰已经工作一年了,每天重复干着简单的工作很是无聊啊.不过社会总是在不断进步的。Roh Johnosn这个Spring国里著名的科学家有发明了一种机器。他能在孩子喊没有出生时就能知道这个孩子的一些基本需要。
      
     
     
     
    
     
      
       晓峰听说现在这种机器很快就要装配到他们这里了,在这里工作一年了,因为还记着在地球的三国厚黑学,所以晓峰的人缘在这里还是很不错的.很早便打了报告希望到这个正在组建的“构造注入”部门工作.
      
     
     
     
    
     
      
       今天晓峰接到通知,他可以去“构造注入”这个新部门了。晓峰明天就要去医院的接生部上班了.
      
     
     
     
    
     
      
       晓峰拿到仪器到了预备接生部,给每一位即将出生的孩子进行预测
      
     
     
     
    
     
      
       比如现在这个即将出生的孩子,他以后长大后会是一个很好的语言学家。晓峰要做到就是写封邮件发回总部。公务员会给他准备好各种语言类的图书
      
     
     
     
    
     
      
       现在我们用java描述一下这件事情
      
     
     
     
    
     
      Public class Baby {
      
     
     
     
    
     
      Public Language lang;
     
     
     
    
     
      Public Baby(Languange lang){
      
     
     
     
    
     
      This.lang = lang;
     
     
     
    
     
      }
     
     
     
    
     
      Public void sayLanguage(){
      
     
     
     
    
     
      System.out.println(“say”+lang.getname);
     
     
     
    
     
      }
     
     
     
    
     
      }
     
     
     
    
     
      Public class Languange{
      
     
     
     
    
     
      Public String name=”
      
       英语”;
      
     
     
     
    
     
      Public Language(){}
     
     
     
    
     
      Public String getName(){
      
     
     
     
    
     
      Return name;
     
     
     
    
     
      }
     
     
     
    
     
      }
     
     
     
    
     
     
    
     
      Xml
      
       文件如下
      
     
     
     
    
     
      <beans>
     
     
     
    
     
      <bean id=”baby” class=”Baby”>
     
     
     
    
     
      <constructor-arg ref=”language” />—->
      
       构造注入
      
     
     
     
    
     
      </bean>
     
     
     
    
     
      <bean id=”language” class=”Language”/>
     
     
     
    
     
      </beans>
     
     
     
    
     
     
    
     
      
       测试文件
      
     
     
     
    
     
      Test.java
      
       文件
      
     
     
     
    
     
      Public class Test{
      
     
     
     
    
     
      Public static void mian(String[] args){
      
     
     
     
    
     
      ApplicationContext ac =
     
     
     
    
     
      new  ClassPathXmlApplicationContext(“bean.xml”);
     
     
     
    
     
      Baby b = (Baby)ac.getBean(“baby”);
     
     
     
    
     
      b.sayLanguage();
     
     
     
    
     
      }
     
     
     
    
     
      }
     
     
     
    
     
     
    
     
      
       结果是:say英语
      
     
     
     
    
     
     
    
     
      
       其中xml文件描述的内容相当于下面的程序
      
     
     
     
    
     
      Language lang = new Language();
     
     
     
    
     
      Baby b = new Baby(lang);
     
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
     
    
     
      
       两种注入方式的比较
      
     
     
     
    
     
     
    
     
      
       这两种注入方式无所谓好与坏
      
     
     
     
    
     
      
       值注入就相当于下面的样子
      
     
     
     
    
     
      Person p = new Person();
     
     
     
    
     
      p.setName(&#
     
    
 
