spring-配置bean(3、基于xml配置)

通过xml配置应该是现如今最常见的配置方式

这是最简单的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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">

</beans>

可以看到,最简单的xml文件就比Java多很多配置代码,而且有些命名空间还要自己去添加,略麻烦。而Java中只需要在一个POJO(普通Java类)上添加一个@Configuration就行了。而要在xml中添加bean。则如下

<?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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">
    <!--只需要beans元素中添加一个bean元素就好了
    这里相当于SgtPeppers sgtPeppers1=new SgtPeppers();-->
    <bean id="sgtPeppers1" class="soundsystem.SgtPeppers"></bean>
</beans>

在这里,id是给你的这个bean命名,以后要引用这个bean直接用id名就好了,class写你的类所在的路径。这是默认构造器的bean命名方式,那么如果有构造器怎么办呢?如下

<?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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">
    <!--利用constructor-arg元素,然后ref属性引用compactDisc -->
    <bean id="cdPlayer" class="soundsystem.CDPlayer">
       <constructor-arg ref="compactDisc "/>
    </bean>

</beans>

此段代码等效基于JavaConfig一篇中的代码:

@Bean
    public CDPlayer cdPlayer(CompactDisc sgtPeppers){
        return new CDPlayer(sgtPeppers);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值