spring学习笔记之DI

DI(Dependency Injection),依赖注入,在Spring框架负责创建Bean对象时,动态的将依赖对象注入到Bean组件中
例如在spring学习笔记之IOC中如果UserServiceImpl的实现类中有一个属性,并且拥有对应的set方法,那么使用Spring框架的IOC功能时,可以通过依赖注入把该属性的值传入进来具体配置如下

<bean id="userService" class="com.hw.server.impl.UserServiceImpl">
    <property name="uname" value="张三"/>
</bean>

Spring框架的几种注入方式

构造函数注入

编写Java类,提供构造函数

    private String name;

    private String password;

    public UserServiceImpl(String name, String password) {
        this.name = name;
        this.password = password;
    }

编写配置文件

    <bean id="userService" class="com.hw.server.impl.UserServiceImpl">
        <constructor-arg name="name" value="张三"/>
        <constructor-arg name="password" value="19"/>
    </bean>

属性的setter方法的注入方式

setter方法注入,只需要提供对应属性的stterr方法,按照如下配置文件编写配置即可

<bean id="person" class="com.hw.entity.Person">
    <property name="pname" value="美美"/>
    <property name="car2" ref="car2"/>
</bean>

数组,集合(List,Set,Map),Properties等的注入

如果是数组或者List集合,注入配置文件的方式是一样的,如下所示

    <bean id="collectionBean" class="com.hw.learn1.entity.CollectionBean">
        <property name="args">
            <list>
                <value>张三</value>
                <value>李四</value>
            </list>
        </property>
    </bean>

如果是Set集合,注入的配置文件方式如下:

  <property name="sets">
        <set>
            <value>张三</value>
            <value>李四</value>
        </set>
    </property>

如果是Map集合,注入的配置方式如下:

        <property name="map">
            <map>
                <entry key="张三" value="38"/>
                <entry key="李四" value="38"/>
                <entry key="王五" value="29"/>
            </map>
        </property>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值