久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網
      最全最豐富的資訊網站

      spring ioc注入的三種方式是什么

      spring ioc注入的三種方式是:1、Setter方法注入,是容器通過調用無參構造器或無參static工廠 方法實例化bean之后,調用該bean的setter方法。2、構造方法注入。3、P命名空間注入。

      spring ioc注入的三種方式是什么

      本教程操作環(huán)境:windows7系統(tǒng)、java8版本、Dell G3電腦。

      Spring IOC(依賴注入的三種方式):

      1、Setter方法注入

      Setter方法注入是容器通過調用無參構造器或無參static工廠 方法實例化bean之后,調用該bean的setter方法,即實現(xiàn)了基于setter的依賴注入。

      package com.jpeony.spring.setter; import com.jpeony.spring.common.HelloServiceImpl;public class HelloWord { private HelloService helloService;       // setter方式注入Bean     public void setHelloService(HelloService helloService) {         this.helloService = helloService;     }       @Override     public void selfIntroduction() {         // 向大家打招呼         helloService.sayHello("大家好!");     }   }
      <?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聲明:          該bean類似于javaConfig中的@Bean注解;          用于創(chuàng)建bean的類通過class屬性來指定,并且需要使用全限定的類名。          通過id指定bean的ID。如果不顯示指定,默認使用class的全限定名進行命名。          eg:          com.jpeony.spring.common.HelloServiceImpl#0,其#0是一個計數(shù)器的形式,          用來區(qū)分相同類型的其他bean。          使用自動化命名很方便,但是沒有多少實際用處,還是建議自己給bean顯示設定ID。      -->     <bean id="helloService" class="com.jpeony.spring.common.HelloServiceImpl"/>       <!-- setter注入bean -->     <bean id="HelloWord" class="com.jpeony.spring.setter.HelloWord">         <property name="helloService" ref="helloService"/>     </bean>   </beans>

      2、構造方法注入

      構造器依賴注入通過容器觸發(fā)一個類的構造器來實現(xiàn)的,該類有一系列參數(shù),每個參數(shù)代表一個對其他類的依賴。

      package com.jpeony.spring.setter; import com.jpeony.spring.common.HelloServiceImpl;  public class HelloWord {     private HelloService helloService;       // 構造方法注入     public HelloWord (HelloService helloService) {         this.helloService = helloService;     }   }
      <?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聲明:          該bean類似于javaConfig中的@Bean注解;          用于創(chuàng)建bean的類通過class屬性來指定,并且需要使用全限定的類名。          通過id指定bean的ID。如果不顯示指定,默認使用class的全限定名進行命名。          eg:          com.jpeony.spring.common.HelloServiceImpl#0,其#0是一個計數(shù)器的形式,          用來區(qū)分相同類型的其他bean。          使用自動化命名很方便,但是沒有多少實際用處,還是建議自己給bean顯示設定ID。      -->     <bean id="helloService" class="com.jpeony.spring.common.HelloServiceImpl"/>       <!-- 構造方法注入bean -->     <bean id="HelloWord" class="com.jpeony.spring.setter.HelloWord">         <constructor-arg><ref bean="helloService"/></constructor-arg>     </bean>   </beans>

      3、P命名空間注入

      package com.jpeony.spring.setter; import com.jpeony.spring.common.HelloServiceImpl;  public class HelloWord {     //名字     private String name;     //年齡     private String age;     //方法類     private HelloService helloService;       public void setName (String name) {         this.name = name;     }          public void setAge (String age) {         this.age = age;     }          public void setHelloService(HelloService helloService) {         this.helloService = helloService;     }       @Override     public void selfIntroduction() {         // 向大家打招呼         helloService.sayHello("我叫"+ name + ",今年" + age + "歲,大家好!");     }   }
      <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        <!-- 引入p命名標簽 -->        xmlns:p="http://www.springframework.org/schema/p"        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">          <bean id="helloService" class="com.jpeony.spring.common.HelloServiceImpl"/>       <!-- p標簽注入bean -->     <bean id="HelloWord" class="com.jpeony.spring.setter.HelloWord"       p:name="明明" p:age="24" p:helloService-ref="helloService"></bean>   </beans>

      P標簽注入集合bean

      package com.jpeony.spring.setter; import com.jpeony.spring.common.HelloServiceImpl; import java.util.List;  public class HelloWord {     //名字     private String name;     //年齡     private String age;     //方法類     private List<HelloService> helloServices;       public void setName (String name) {         this.name = name;     }          public void setAge (String age) {         this.age = age;     }          public void setHelloServices(List<HelloService> helloServices) {         this.helloServices = helloServices;     }       @Override     public void selfIntroduction() {         // 向大家打招呼         helloServices[0].sayHello("我叫"+ name + ",今年" + age + "歲,大家好!");     }   }
      <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        <!-- 引入p命名標簽 -->        xmlns:p="http://www.springframework.org/schema/p"        <!-- 引入util命名標簽 -->        xmlns:util="http://www.springframework.org/schema/util"        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">          <bean id="helloService" class="com.jpeony.spring.common.HelloServiceImpl"/>      <bean id="helloService2" class="com.jpeony.spring.common.HelloServiceImpl">     ...........     </bean>       <util:list id="helloServices">         <ref bean="helloService"/>         <ref bean="helloService2"/>     </util:list>      <!-- p標簽注入bean -->     <bean id="HelloWord" class="com.jpeony.spring.setter.HelloWord"       p:name="明明" p:age="24" p:helloServices-ref="helloServices"></bean>   </beans>

      贊(0)
      分享到: 更多 (0)
      網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號