Spring 依赖注入(DI)

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

  • Setter方法注入
  • 构造器注入

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>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容