Spring——自动装配Bean

· 自动装配是Spring满足bean依赖的一种方式

· Spring会在上下文中自动寻找,并自动给bean装配属性


在Spring中有三种装配的方式:

1. 在xml中显示配置

2. 在java中显示配置

3. 隐式的自动装配bean【重要】


测试

记得创建Cat、Dog、People类

public class MyTest {
    @Test
    public void test1(){
        ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
        People people = context.getBean("people", People.class);
        people.getDog().shout();
        people.getCat().shout();
    }
}

ByName自动装配

    <!--
    byName:会自动在容器上下文中查找,和自己对象set方法后面的值对应的beanid
    -->
    <bean id="people" class="com.yang.pojo.People" autowire="byName">
        <property name="name" value="辰阳"/>
    </bean>

ByType自动装配

    <bean class="com.yang.pojo.Cat"/>
    <bean class="com.yang.pojo.Dog"/>

    <!--
    byType:会自动在容器上下文中查找,和自己对象属性类型相同的bean(必须保证类型全局唯一,如有两个狗就会报错)(可以省略id)
    -->
    <bean id="people" class="com.yang.pojo.People" autowire="byType">
        <property name="name" value="辰阳"/>
    </bean>

小结:

·  byname时,需要保证所有的bean的id唯一,并且这个bean需要和自动注入的属性的set方法的值一致

·  bytype时,需要保证所有的bean的class唯一,并且这个bean需要和自动注入的属性的类型一致

相关推荐

  1. Spring——自动装配Bean

    2024-07-12 02:32:03       22 阅读
  2. spring基于Xml管理bean---自动装配

    2024-07-12 02:32:03       62 阅读
  3. 读《Spring实战》第二章:装配bean

    2024-07-12 02:32:03       34 阅读
  4. Spring Boot 自动装配原理

    2024-07-12 02:32:03       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 02:32:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 02:32:03       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 02:32:03       58 阅读
  4. Python语言-面向对象

    2024-07-12 02:32:03       69 阅读

热门阅读

  1. 前端高頻面試題(一)

    2024-07-12 02:32:03       22 阅读
  2. SpringBoot常见注解

    2024-07-12 02:32:03       19 阅读
  3. linux lvm使用

    2024-07-12 02:32:03       21 阅读
  4. ETag:Springboot接口如何添加Tag

    2024-07-12 02:32:03       22 阅读
  5. 3. 排序算法代码-python

    2024-07-12 02:32:03       23 阅读
  6. android 图片轮播

    2024-07-12 02:32:03       20 阅读
  7. ubuntu 检查硬盘的通电时长、健康度

    2024-07-12 02:32:03       25 阅读
  8. SQL约束

    2024-07-12 02:32:03       25 阅读
  9. 在conda虚拟环境中安装llama-parse依赖

    2024-07-12 02:32:03       21 阅读