Spring 依赖注入(DI)

2017-04-28  本文已影响9人  ChanHsu

在Spring框架中,依赖注入(DI)的设计模式是用来定义对象彼此间的依赖。它主要有两种类型:

1.Setter方法注入

这是最流行最简单的DI注入方法,通过设置方法注入依赖。
配置Bean在Spring配置文件,并引用Bean “CsvOutputGenerator” 到 “OutputHelper”,通过property 和 ref 标签。

<bean id="OutputHelper" class="com.springapp.output.OutputHelper">
        <property name="outputGenerator" ref="CsvOutputGenerator" />
</bean>
 
<bean id="CsvOutputGenerator" class="com.springapp.output.impl.CsvOutputGenerator" />

2.构造方法注入

此DI方法将通过构造函数注入依赖。

    <bean id="OutputHelper" class="com.springapp.output.OutputHelper">
        <constructor-arg>
            <ref bean="JsonOutputGenerator" />
        </constructor-arg>
    </bean>
 
    <bean id="JsonOutputGenerator" class="com.springapp.output.impl.JsonOutputGenerator" />

3.构造方法注入类型歧义

在Spring框架中,当一个类包含多个构造函数带的参数相同,它总是会造成构造函数注入参数类型歧义的问题,
显式声明每个构造函数参数的数据类型,以避免上述构造注入型歧义的问题

    <bean id="CustomerBean" class="com.springapp.common.Customer">

        <constructor-arg>
            <value>ssss</value>
        </constructor-arg>
        
        <constructor-arg>
            <value>188</value>
        </constructor-arg>
        
        <constructor-arg>
            <value>28</value>
        </constructor-arg>
     </bean>
上一篇 下一篇

猜你喜欢

热点阅读