Spring注入方式

一.Spring注入的方式通常有兩種:
(1)屬性的set注入(推薦使用
(2)構造方法注入(不推薦
關鍵類如下:
Chinese類:

package com.java.spring;
public class Chinese implements Person {
    private Tool tool;
    //方法1:使用set方法(推薦使用)
    public Tool getTool() {
        return tool;
    }
    public void setTool(Tool tool) {
        this.tool = tool;
    }
    /*//方法2:構造方法(少用)
    public Chinese(Tool tool){
        this.tool=tool;
    }
    */
    @Override
    public void work() {
        // TODO Auto-generated method stub
        tool.realwork();
    }

}

ConcreteToolA類:

package com.java.spring;
public class ConcreteToolA implements Tool {
    @Override
    public void realwork() {
        // TODO Auto-generated method stub
        System.out.println("from concreteToolA");
    }
}

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"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <bean id="toolA" class="com.java.spring.ConcreteToolA"></bean>
    <bean id="toolB" class="com.java.spring.ConcreteToolB"></bean>

    <bean id="chinese" class="com.java.spring.Chinese">
        <property name="tool" ref="toolB"></property>
        <!--  方法2:少用
        <constructor-arg>
            <ref local="toolA"/>
        </constructor-arg>
    --></bean>

</beans>

對於bean的autowire屬性來說,推薦使用default默認值即手工完成屬性的注入工作

發佈了21 篇原創文章 · 獲贊 6 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章