• spring管理bean


    大家好,这里是教授.F

    管理bean方面:


    获取bean:

    1. /**
    2. * 通过类型来获取容器的 bean 对象
    3. */
    4. @Test
    5. public void getMonsterByType() {
    6. ApplicationContext ioc = new ClassPathXmlApplicationContext("beans.xml");
    7. Monster monster = ioc.getBean(Monster.class);
    8. System.out.println("monster=" + monster);
    9. Monster monster2 = ioc.getBean(Monster.class);
    10. System.out.println("monster == monster2 的值= " + (monster == monster2));
    11. }
    1. 1. 按类型来获取 bean, 要求 ioc 容器中的同一个类的 bean 只能有一个,
    2. 否则会抛出异常NoUniqueBeanDefinitionException
    3. 2. 这种方式的应用场景:比如 XxxAction/Servlet/Controller,
    4. 或 XxxService 在一个线程中只需要一个对象实例(单例)的情况
    5. 3. 老师这里在说明一下: 在容器配置文件(比如 beans.xml)中给属性赋值, 底层是通过
    6. setter 方法完成的, 这也是为什么我们需要提供 setter 方法的原因

    通过构造器配置bean对象:

    1. "monster02" class="com.hspedu.spring.beans.Monster">
    2. "2" index="0"/>
    3. "蜘蛛精" index="1"/>
    4. "吐口水" index="2"/>
    5. "monster03" class="com.hspedu.spring.beans.Monster">
    6. "3" type="java.lang.Integer"/>
    7. "白骨精" type="java.lang.String"/>
    8. "白骨鞭" type="java.lang.String"/>
    1. 通过 index 属性来区分是第几个参数
    2. 2. 通过 type 属性来区分是什么类型(按照顺序)

    通过P名称空间配置bean:

    1. "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
    2. http://www.springframework.org/schema/beans/spring-beans.xsd">
    3. "monster04" class="com.hspedu.spring.beans.Monster"
    4. p:monsterId="4" p:name="红孩儿"
    5. p:skill="吐火~"
    6. />
  • 相关阅读:
    java计算机毕业设计医院医护人员排班系统源代码+系统+数据库+lw文档
    谷粒商城-分布式基础项目环境搭建
    LeetCode——1422.分割字符串的最大得分
    【kubernetes】探索k8s集群的存储卷、pvc和pv
    elastisearch开发时的发现
    Android——gradle插件配置方式——dependencies和plugins
    矩阵病态问题
    【C++ 程序】级数求和
    [BJDCTF2020]Cookie is so stable
    LeetCode 26. 删除有序数组中的重复项
  • 原文地址:https://blog.csdn.net/FZYjiaoshou/article/details/138923411