Spring5(5) —— Spring配置说明


在这里插入图片描述
在这里插入图片描述
   上面的5个标签中除去根标签beans,其他4个里除了description我们不用掌握之外,其他3个都要掌握,注意,这些标签都是在根标签beans里面使用的
    既然根标签beans里存放的是bean节点,即对象,那么剩下的几个标签理所应当的就是为bean服务的了


1.alias标签

    为一个装配到容器中的对象取别名,注意:取别名之后我们按照对象的id还是可以获取到这个对象,现在这个bean有两种获取方式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.bean标签

    <!--
        id:为对象名称
        class:为对象对象的类的全限定名
        name:为这个对象取别名,这个别名更高级,可以取多个别名,且别名直接可以使用多种分隔符
    -->
    <bean id="userT" class="com.thhh.pojo.UserT" name="t1 t2,t3;t4"/>

在这里插入图片描述
    测试

package com.thhh.dao;

import com.thhh.pojo.UserT;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MyTest {
    public static void main(String[] args) {
        ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
        UserT t1 = (UserT) context.getBean("t1");
        UserT t2 = (UserT) context.getBean("t2");
        UserT t3 = (UserT) context.getBean("t3");
        UserT t4 = (UserT) context.getBean("t4");
        UserT userT = (UserT) context.getBean("userT");
        System.out.println("t1 == t2吗?"+(t1 == t2));
        System.out.println("t1 == t3吗?"+(t1 == t3));
        System.out.println("t1 == t4吗?"+(t1 == t4));
        System.out.println("t1 == userT吗?"+(t1 == userT));
    }
}

在这里插入图片描述

3.import标签

    一般用于团队开发使用,它可以将多个spring配置文件导入,并将其合并为一个spring配置文件
    在实际的开发中,最终项目的spring配置文件命名一般为applicationContext.xml,这也是官方文档推荐的名称;前面我们为了方便写文件名称就直接给配置文件名称为beans.xml,其实文件可以随意名称,只要能读取到就行,但是按照规范编写可以提高代码的可读性

    假设现在3个人合作开发一个项目,每个人的配置文件使用beans-i.xml来名称,那么在最终整合项目的时候,我们将创建一个applicationContext.xml配置文件,使用import节点将这3个配置文件导入进来
在这里插入图片描述
在这里插入图片描述

    这里的beans-i.xml都是使用beans-1.xml复制出来的,测试的时候我们可以看一下spring怎么解决的子配置文件中对象重名问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
    可见使用import导入总配置文件中的子配置文件,如果有重名的对象,它将取最后一个匹配的文件中的对象返回,即后面同名bean将覆盖前面的同名bean,因为最终所有的spring配置文件都会融合成一个配置文件,即一个IOC容器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值