首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >06 Spring框架 依赖注入(三)多配置文件

06 Spring框架 依赖注入(三)多配置文件

作者头像
MindMrWang
发布2018-04-16 16:06:30
5490
发布2018-04-16 16:06:30
举报
文章被收录于专栏:Java学习之路Java学习之路

在Spring前几节的学习中我们都使用了一个配置文件,就像struts2中可以包含其他的配置文件,我们能不能使用多个配置文件呢(在工程比庞大,配置比较多的时候)?

Spring多配置文件分为两种:

  • 平等关系的配置文件
  • 包含子配置文件

(一)平等关系的配置文件 我们可以创建两个配置文件在包下

这里写图片描述
这里写图片描述

我们可以同时使用这两个配置文件在我们的应用当中,使用的方式由很多种,这里我举出比较常用的几种:

//Spring-*.xml只要配置文件的前缀相同我们就可以这样使用
String resource = "com/testConfig/Spring-*.xml";
        ApplicationContext ac = new ClassPathXmlApplicationContext(resource);

这里写图片描述
这里写图片描述

我们看看ClassPathXmlApplicationContext的构造函数,第四个构造函数提供了多个参数,这也就是说我们可以填写几个配置文件的String路径

    @Test
    public void Test02() {
        String resource1 = "com/testConfig/Spring-base.xml";
        String resource2 = "com/testConfig/Spring-equal.xml";
        ApplicationContext ac = new ClassPathXmlApplicationContext(resource1,resource2);
        Book book = (Book)ac.getBean("book");
        System.out.println(book);
    }

③ 我们观察上面的ClassPathXmlApplicationContext构造函数,我们同样可以填写一个路径字符串数组:

    @Test
    public void Test03() {
        String resource1 = "com/testConfig/Spring-base.xml";
        String resource2 = "com/testConfig/Spring-equal.xml";
        String[]resource = {resource1,resource2};
        ApplicationContext ac = new ClassPathXmlApplicationContext(resource);
        Book book = (Book)ac.getBean("book");
        System.out.println(book);
    }

(二)包含子配置文件 上面说的几种方法在地位上都是平等的,接下来我们来配置一个主配置文件的子配置文件: 这种包含关系的配置文件和Struts2中的方式就比较像了只需要在主配置文件中加一个import标签:

这里写图片描述
这里写图片描述

同样的如果在主配置文件base中要import多个配置文件的话,我们也可以这样:

<!--引入多个配置文件-->
<import resource="Spring-*.xml">
<!--注意:总的配置文件不能和包含的子配置文件格式相同,否则会将自身包含进去,出错-->
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-12-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档