[Spring5]IOC容器_Bean管理XML方式_自动装配

Posted 唐火

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Spring5]IOC容器_Bean管理XML方式_自动装配相关的知识,希望对你有一定的参考价值。

IOC操作Bean管理(xml自动装配)

package com.atguigu.spring.autowire;

public class Dept 

    @Override
    public String toString() 
        return "Dept";
    


package com.atguigu.spring.autowire;

public class Emp 
    private Dept dept;

    public void setDept(Dept dept)
    
        this.dept = dept;
    

    @Override
    public String toString() 
        return "Emp" +
                "dept=" + dept +
                '';
    

    public void test()
    
        System.out.println(dept);
    


传统方法:

<?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">

    <bean id = "emp" class = "com.atguigu.spring.autowire.Emp">
        <property name="dept" ref="dept"></property>
    </bean>

    <bean id = "dept" class = "com.atguigu.spring.autowire.Dept"></bean>

</beans>

1.什么是自动装配

(1)根据指定装配规则(属性名称或者属性类型),Spring自动将匹配的属性值进行注入

2.演示自动装配过程

(1)根据属性名称自动注入,注入值bean的id值和类属性名称一样

<?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">

    <!--实现自动装配
        bean标签属性autowire,配置自动装配
        autowire属性常用两个值:byName根据属性名称注入,byType根据属性类型注入-->
    <bean id = "emp" class = "com.atguigu.spring.autowire.Emp" autowire="byName">

    </bean>

    <bean id = "dept" class = "com.atguigu.spring.autowire.Dept"></bean>

</beans>

(2)根据属性类型自动注入

注意:相同类型不能有多个,不然它不知道注入哪一个

<?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">

    <!--实现自动装配
        bean标签属性autowire,配置自动装配
        autowire属性常用两个值:byName根据属性名称注入,byType根据属性类型注入-->
    <bean id = "emp" class = "com.atguigu.spring.autowire.Emp" autowire="byType">

    </bean>

    <bean id = "dept" class = "com.atguigu.spring.autowire.Dept"></bean>

</beans>

以上是关于[Spring5]IOC容器_Bean管理XML方式_自动装配的主要内容,如果未能解决你的问题,请参考以下文章

[Spring5]IOC容器_Bean管理XML方式_注入其他类型属性

[Spring5]IOC容器_Bean管理XML方式_外部属性文件

[Spring5]IOC容器_Bean管理XML方式_创建对象_set注入属性and有参构造注入属性

[Spring5]IOC容器_Bean管理XML方式_注入集合类型属性

[Spring5]IOC容器_Bean管理注解方式_完全注解开发

Spring5——IOC操作Bean管理(基于xml文件)