Spring 自動裝配


一、自動裝配方式

1.byName(屬性),byType(屬性),contructor(構造函數)

二、默認自動裝配(多數裝配都是用一樣的裝配方式,可以全局設定,少數自設定)

 全局byType,MyBean使用constructor

    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd"
        default-autowire="byType"
        >
    <!-- <bean id="myBean" class="com.lzp.mySpringMin.MyBean" autowire="byName"> 
        </bean> <bean id="myBeanByName" class="com.lzp.mySpringMin.MyBeanByName"></bean> -->

    <bean id="myBean2" class="com.lzp.mySpringMin.MyBean" autowire="constructor">  

    </bean>
    <bean id="myBeanByContructor" class="com.lzp.mySpringMin.MyBeanByContructor"></bean>

三、混合自動裝配

    <bean id="myBeanByName" class="com.lzp.mySpringMin.MyBeanByName"></bean>
    <bean id="myBean2" class="com.lzp.mySpringMin.MyBean" autowire="constructor">
        <property name="myBeanByName" ref="myBeanByName"></property>
    </bean>
    <bean id="myBeanByContructor" class="com.lzp.mySpringMin.MyBeanByContructor"></bean>

四、使用注解裝配

<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:context="http://www.springframework.org/schema/context"
 xsi:schemaLocation="http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans.xsd
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context.xsd">
  <!-- <context:component-scan 
      base-package="com.lzp.mySpringMin">
  </context:component-scan> -->
<context:annotation-config></context:annotation-config>

    <!-- <bean id="myBean" class="com.lzp.mySpringMin.MyBean" autowire="byName"> 
        </bean> -->
    <bean id="myBeanByName" class="com.lzp.mySpringMin.MyBeanByName"></bean>
    <!-- <bean id="myBean2" class="com.lzp.mySpringMin.MyBean" autowire="constructor"> -->
    <bean id="myBean2" class="com.lzp.mySpringMin.MyBean" >
        <!-- <property name="myBeanByName" ref="myBeanByName"></property> -->
    </bean>
    <bean id="myBeanByContructor" class="com.lzp.mySpringMin.MyBeanByContructor"></bean>
    <bean id="aa" class="com.lzp.mySpringMin.MyImplatement"></bean>
    <bean id="bb" class="com.lzp.mySpringMin.MyImplatement2"></bean>
    @Autowired
    @Qualifier("aa")
    private MyInterface myInterface;

當一種一個bean時,直接使用@Autowired即可,如果有多個bean為指定同一類型時,可以使用@Qualifier來確定其值。

注意xml的頭配置

五、自動掃描

自動掃描在springmvc詳細說明。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM