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、Beab对象中集合属性在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">[email protected]</prop>
        </props>
    </property>
</bean>

原文地址:https://www.cnblogs.com/zzb-yp/p/9968849.html

时间: 2024-10-05 04:36:05

Spring之XML配置Bean的属性注入的相关文章

Spring框架xml配置文件 复杂类型属性注入——数组 list map properties

Person类中的各种属性写法如下: package com.swift.person; import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Properties; public class Person { //普通字符串 private String name; //字符串数组 private String[] arr; //字符串列表 private List<Stri

Spring中&lt;bean&gt;标签之使用p标签配置bean的属性

在spring的bean配置文件中我们常可以见到下面的例子: <bean id="user" class="com.sys.User" p:name-ref="name" /> 其中,p:name-ref="name"使用了p标签来配置bean的name的引用. 在使用p标签配置bean的属性时,我们先要声明p标签的命名空间xmlns:p="http://www.springframework.org/s

Spring事务Transaction配置的五种注入方式详解

Spring事务Transaction配置的五种注入方式详解 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. ??? 总结如下: ??? Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. ???DataSou

spring 注解方式配置Bean

概要: 再classpath中扫描组件 组件扫描(component scanning):Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件 特定组件包括: @Component:基本注解,标示了一个受Spring管理的组件(可以混用,spring还无法识别具体是哪一层) @Respository:建议标识持久层组件(可以混用,spring还无法识别具体是哪一层) @Service:建议标识服务层(业务层)组件(可以混用,spring还无法识别具体是哪一层) @Con

spring学习一——基本搭建,属性注入的两种方式

今天用spring 3.2.5搭建了基本的环境,spring出的太快了,前段时间才3.2.5,今儿个一瞧已经上了4的版本了,稍后给出spring的jar下载地址,毕竟现在官网上找不到了啊. 废话少说了,spring 3.2.5已经将所有的依赖包都放在了dist的lib下面,并且都有doc包和源码包,很是方便.先导入所需的jar包:core,context,beans,expression 四个jar包,除此之外,还需导入commons-logging. 下一步,新建xml文件,建议名称为 app

java实现Spring在XML配置java类

1.创建自己的bean文件:beans.xml <?xml version="1.0" encoding="UTF-8"?> <busi-beans> <beans> <bean id="SysHelloImpl" type="com.cxm.test.SysHello"> <desc>test</desc> <impl-class>com.c

spring Ioc容器之使用XML配置Bean

1.项目截图 2.创建xml文件 3.打印机接口 package com.example.demo.computerTest; public interface Printer { void init(); void print(String txt); } 4.彩色打印机 package com.example.demo.computerTest; public class ColorPrinter implements Printer { @Override public void init

Spring通过注解配置Bean

@Component: 基本注解, 标识了一个受 Spring 管理的组件@Repository: 标识持久层组件@Service: 标识服务层(业务层)组件@Controller: 标识表现层组件 配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&qu

Spring 在xml配置里配置事务

事先准备:配置数据源对象用<bean>实例化各个业务对象. 1.配置事务管理器. <bean id="transactionManager" class="org.springframework.jdbc.datasourceManager"> <property name="datasource" ref="datasource"></property> </bean&g