Spring装配Bean -- 通过XML装配Bean

创建XML配置规范

        最简单的Spring XML配合如下所示:

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

</beans>

        用来装配Bean的最基本的XML元素包含在Spring-Beans模式之中,在XML文件中,本定义为根命名空间.<beans>是该模式中的一个元素,它是所有Spring配置文件的根元素.


声明一个简单的<bean>

<bean id="beatlesCD" class="main.java.Demo1.BeatlesCD"/>

        这声明一个简单的Bean,创建该Bean的类用过class属性来指定,使用全限定的类名.id属性用来给bean命名.


借助构造器注入初始化Bean

        1.<constructor-arg>元素

        2.使用Spring3.0所引入的c-命名空间

        第一种比第二种冗长繁琐


构造器注入Bean引用:

<bean id="cdPlayer" class="main.java.Demo1.CDPlayer">
    <constructor-arg ref="beatlesCD"/>
</bean>

        以上为对CDPlayer Bean的声明,引用上面beatlesCD Bean的引用.

        当Spring遇到这个<bean>元素时,它会创建一个CDPlayer的实例.<constructor-arg>元素会告知Spring要将一个ID为"beatlesCD"的Bean的引用传递给CDPlayer的构造器中.

        还可将字面量(常量)注入到构造器中,如下:        

    <bean id="cdPlayer" class="main.java.Demo1.CDPlayer">
        <constructor-arg ref="beatlesCD"/>
        <constructor-arg value="value"/>
    </bean>

        value属性表明给定的值要以字面量的形式注入到构造器中.

        装配集合:如果构造器需要一个集合如List,可用如下方式:

    <bean id="cdPlayer" class="main.java.Demo1.CDPlayer">
        <constructor-arg ref="beatlesCD"/>
        <constructor-arg>
            <list>
                <value>Demo1</value>
                <value>Demo2</value>
            </list>
        </constructor-arg>
    </bean>

        集合中的类型也可是其他Bean.


Setter方法设置属性:

        上述Bean的声明完全是通过构造器注入的,没有使用属性的Setter方法.下面例子是如何用Setter方法实现属性注入.

    <bean id="cdPlayer" class="main.java.Demo1.CDPlayer">
        <property name="cd" ref="beatlesCD"/>
    </bean>

        <property>元素为属性的Setter方法所提供的功能与<constructor-arg>元素为构造器所提供的功能是一样的.

        Setter方法同样也可以将字面量注入到属性中:

  <property name="name" value="vina"/>
        同样可以注入集合属性:
        <property name="names">
            <value>vina</value>
            <value>myvina</value>
        </property>

        


以上就是通过XML装配Bean的所有内容.


1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值