实战Spring通过XML装配bean

在装配bean的时候,还有一种可选方案。官方可能认为这种方式不好,因为非 java 代码配置,但是每个人的看法和喜好不同,也不是说不能选择的。

创建XML配置规范

在使用JavaConfig的时候,这意味着要创建一个带 有@Configuration注解的类,而在XML配置中,这意味着要创建一个XML文件,并且要以<beans>元素为根。

最为简单的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>

这个基本的XML配置已经比同等功能的JavaConfig类复杂得多了。作为起步,在JavaConfig中所需要的只是@Configuration,但在使用XML时,需要在配置文件的顶部声明多个XML模式(XSD)文件,这些文件定义了配置Spring的XML元素。

当然在 idea 中,你只需要选择 file 然后新建,然后 如图:

实战Spring通过XML装配bean

他会创建一个最最最基础的 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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

</beans>

为了做测试,让我们重新在走一遍CD样例,这次使用XML配置,而不是前几篇文章 使用JavaConfig和自动化装配。

声明一个简单的<bean>

要在基于XML的Spring配置中声明一个bean,我们要使用spring-beans模式中的另外一个元素:<bean>。

<bean>元素类似于JavaConfig中的@Bean注解。我们可以按照如下的方式声明CompactDisc bean:

  <bean id="compactDisc" class="soundsystem.SgtPeppers" />

这是最最基本的 声明 bean 的方式,当然 id 可有可无,创建这个bean的类通过class属性来指定的,并且要使用绝对路径,全路径。

如果不加 id

没有明确给定ID,所以这个bean将会根据全类名来进行命名。

在本例中,bean的ID将会是“soundsystem.SgtPeppers#0”。其中,“#0”是一个计数的形式(计数就是为了区分),用来区分相同类型的其他bean。

如果你声明了另外一个SgtPeppers(另外一个的前提是不在同一个包下),并且没有明确进行标识,那么它自动得到 的ID将会是“soundsystem.SgtPeppers#1”。

不过,通常来讲更好的办法是借助id属性,为每个bean设置一个你自己选择的名字,以便于日后引用可以直接使用。

声明简单bean的一些特征

  1. 无需负责创建SgtPeppers的实例,也就是初始化;

  2.  

 

 

上一篇:.什么是 JavaConfig


下一篇:udp网络程序 | 手把手教你入门Python之九十六