Spring的基础配置(bean)(个人复习用)

本文深入解析Spring框架中依赖注入的多种方式,包括属性注入、构造函数注入、静态工厂注入等,详细介绍了各种注入方式的使用场景及配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--将user 对象 交给spring容器管理-->
    <!--Bean元素的解释
        name:给被管理的对象起的名字  获取时根据名字来获取到指定对象,可以重复  可以使用特殊字符
        class:被管理对象的完整类名
        id属性:  和name属性功能一样。名称不可重复  不能使用特殊字符
        scope:
                singleton 单例对象
                prototype 多例对象
    -->
    <!--1.空参构造创建对象-->
    <bean name="user1" class="bean.User">
        <!--为user对象中的属性name注入 值symsym-->
        <property name="name" value="symsym"></property>
        <property name="age" value="21"></property>
        <property name="car" ref="car"></property>
    </bean>
        <!--这都是set方法注入值-->
    <bean name="car" class="bean.Car">
        <property name="name" value="法拉利"></property>
        <property name="color" value="酷炫黑"></property>

    </bean>

    <!--构造函数 注入值-->
    <!--
        name:指定构造函数的参数名
        value:指定值
        index:指定参数的索引
        type:指定参数的类型
    -->
    <bean name="user2" class="bean.User">
        <constructor-arg name="name" value="symsym" index="0" type="java.lang.String"></constructor-arg>
        <constructor-arg name="car" ref="car" index="1"></constructor-arg>
    </bean>

    <!--复杂类型注入-->
    <!--arr数组 注入-->
    <bean name="cb" class="bean.CollectionBean">
        <!--如果数组中指注入一个指  直接用 value或ref即可-->
        <!--<property name="arr" value="tom"></property>-->
        <property name="arr">
            <array>
                <value>sym1</value>
                <value>sym2</value>
                <ref bean="user1"></ref>
            </array>
        </property>
        <property name="list">
            <list>
                <value>sym3</value>
                <value>sym4</value>
                <ref bean="car"></ref>
            </list>
        </property>
        <!--map类型注入-->
        <property name="map">
            <map>
                <entry key="url" value="adwda"></entry>
                <entry key="user" value-ref="user1"></entry>
                <entry key-ref="user1" value-ref="user2"></entry>
            </map>
        </property>
    </bean>





    <!--2.静态工厂创建对象  用userfactory中的createuser的方法来创建名为 user1的对象。放入spring容器-->
   <!-- <bean name="" class="bean.UserFactory" factory-method="createUser"></bean>-->
</beans>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值