基础篇——Spring之XML配置Bean的属性注入

    Spring中XML文件配置Bean的简单示例,如下:

<bean id="car" class="com.smart.ditype.Car">
    <property name="color">
        <value>红色</value>
    </property>
</bean>

    注:在上述例子中,<property>标签对应的属性类型是基础数据类型,Spring容器会将它的字面值“红色”自动转化成Bean对象中属性所对应到的字符串类型,但是除了字符串、整型等这些基础数据类型外,还有Bean、List、Set、Map、Properties等类型。

    注:如果所赋值内容可以被XML文件解析,如:<、&、>、“、‘等,则需要进行特殊处理方可被正确赋值,如下:

复制代码
<bean id="car" class="com.smart.ditype.Car">
    <property name="type">
        <value><![CDATA[XX&55]]></value>
    </property>
    <property name="xml">
        <value>&lt:开尖括号</value>
    </property>
</bean>
复制代码

 

    注:上述中Bean对象两个属性赋值分别为XX&55和<开尖括号,使用<![CDATA[文本内容]]>使得文本内容当作普通文本进行处理,&lt;是<的转义格式,另外还有&gt;是>的转义、&amp;是&的转义、&quot;是“的转义、&apos;是‘的转义

    注:<value></value>中带有空格则赋予的值将包括空格,如果想要将null赋给属性,如下:

<bean id="car" class="com.smart.ditype.Car">
    <property name="color">
        <null/>
    </property>
</bean>

 

    1、Bean对象中Bean属性在XML文件中的配置如下:

<bean id="car" class="com.smart.ditype.Car">
    <property name="boss">
        <ref bean="boss"></ref>
    </property>
</bean>
<bean id="boss" class="com.smart.ditype.Boss"/>

 

    注:如果①Bean只被②Bean引用而不被其他任何Bean引用,那么可以将①Bean以内部Bean的方式注入到②Bean,如下:

复制代码
<bean id="car" class="com.smart.ditype.Car">
    <property name="boss">
        <bean class="com.smart.ditype.Boss">
            <property name="color">
                 <value>红色</value>
            </property>
        </bean>
    </property>
</bean>
复制代码

 

    2、Bean对象中集合属性在XML文件中的配置如下:

复制代码
<bean id="car" class="com.smart.ditype.Car">
    <property name="list">
        <list>
            <value>看报</value>
            <value>赛车</value>
        </list>
    </property>
    <property name="set">
        <set>
             <value>踢球</value>
             <value>打牌</value>
        </set>
    </property>
    <property name="map">
        <map>
            <entry>
                <key><value>am</value></key>
                <value>见客户</value>
            </entry>
        </map>
    </property>
    <property name="properties">
        <props>
<prop key="mail">17896532@123.com</prop> </props> </property> </bean>
复制代码

 

posted @   不浪小生  阅读(9797)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示