spring基于xml的自动装配

官网说明表格:

mode 说明
no (默认)无自动装配。 Bean引用必须由ref元素定义。对于大型部署,建议不要更改默认设置,因为明确指定协作者可以提供更好的控制和清晰度。在某种程度上,它记录了系统的结构。
byName 按属性名称自动装配。 Spring寻找与需要自动装配的属性同名的bean。例如,如果一个bean定义被设置为按名称自动装配,并且包含一个master属性(即,它具有setMaster(…)方法),那么Spring将查找一个名为master的bean定义并使用它来设置该属性。
byType 如果容器中恰好存在一个属性类型的bean,则使该属性自动装配。如果存在多个,则将引发致命异常,这表明您可能无法对该bean使用byType自动装配。如果没有匹配的bean,则什么都不会发生(未设置该属性)。
constructor 与byType类似,但适用于构造函数参数。如果容器中不存在构造函数参数类型的一个bean,则将引发致命错误。

示例:

<bean id="something" class="things.ThingOne" autowire="byType">
    <property name="fred.bob.sammy" value="123" />
bean>

也可以在xml头文件进行如下声明:

<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
        https://www.springframework.org/schema/beans/spring-beans.xsd"
default-autowire="byName"
>

那么这个xml文件中的所有bean都会启用byName的自动装配,其他自动装配方式的也一样

你可能感兴趣的:(spring学习笔记)