在一个大的项目结构,Spring bean配置文件位于不同的文件夹以便于维护和模块化。例如,Spring-Common.xml在common 文件夹中,Spring-Connection.xml 在connection文件夹,Spring-ModuleA.xml在ModuleA 文件夹等等。
你可以加载多个Spring bean的配置文件如下代码中:
ApplicationContext context = new ClassPathXmlApplicationContext(new String[] {"Spring-Common.xml","Spring-Connection.xml","Spring-ModuleA.xml"});
把所有的 Spring XML 文件放入在项目类路径中。
project-classpath/Spring-Common.xmlproject-classpath/Spring-Connection.xmlproject-classpath/Spring-ModuleA.xml
解决方法
以上方法是缺乏组织并且很容易出错,更好的办法应组织所有的Spring bean 配置文件到一个XML文件。例如,创建一个Spring-All-Module.xml文件,并导入整个Spring bean的文件如下:
File : Spring-All-Module.xml
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd"><import resource="common/Spring-Common.xml"/><import resource="connection/Spring-Connection.xml"/><import resource="moduleA/Spring-ModuleA.xml"/></beans>
现在,可以加载一个这样的 XML 文件:
ApplicationContext context = new ClassPathXmlApplicationContext(Spring-All-Module.xml);
将这个文件放入项目的类路径。
project-classpath/Spring-All-Module.xml
注意
在Spring3,所述替代解决方案是使用 JavaConfig @Import.

http://www.yiibai.com/spring/load-multiple-spring-bean-configuration-file.html

Spring bean加载多个配置文件相关推荐

  1. spring bean加载过程_Spring源码剖析3:Spring IOC容器的加载过程

    本文转自五月的仓颉 https://www.cnblogs.com/xrq730 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https ...

  2. spring bean加载过程_Spring的Bean加载容器机制

    xml配置文件加载的容器: 通过注解加载的容器: xml容器用如下方式获得: ApplicationContext applicationContext = new ClassPathXmlAppli ...

  3. spring bean加载原理

    简单的分析了一下spring bean的加载原理,属于个人的理解,源码比这个要复杂的多: spring的配置文件applicationContext.xml的内容如下: <?xml versio ...

  4. Spring Boot学习总结(13)——Spring Boot加载application.properties配置文件顺序规则

    SpringApplication会从以下路径加载所有的application.properties文件: 1.file:./config/(当前目录下的config文件夹) 2.file:./(当前 ...

  5. 通过web.xml文件自动启动spring容器加载对应的配置文件

    在web开发中可以在web.xml文件中配置自启动的servlet或者web容器监听器,借助两者中的任何一者都可以完成启动spring web应用上下文的工作. 下面给出使用web监听器的方式来实现启 ...

  6. Spring源码分析:Bean加载流程概览及配置文件读取

    很多朋友可能想看Spring源码,但是不知道应当如何入手去看,这个可以理解:Java开发者通常从事的都是Java Web的工作,对于程序员来说,一个Web项目用到Spring,只是配置一下配置文件而已 ...

  7. 【Spring源码分析】Bean加载流程概览

    代码入口 之前写文章都会啰啰嗦嗦一大堆再开始,进入[Spring源码分析]这个板块就直接切入正题了. 很多朋友可能想看Spring源码,但是不知道应当如何入手去看,这个可以理解:Java开发者通常从事 ...

  8. beaninfo详解源码解析 java_【Spring源码分析】Bean加载流程概览

    代码入口 之前写文章都会啰啰嗦嗦一大堆再开始,进入[Spring源码分析]这个板块就直接切入正题了. 很多朋友可能想看Spring源码,但是不知道应当如何入手去看,这个可以理解:Java开发者通常从事 ...

  9. Spring Boot加载配置文件

    问题1:Spring如何加载配置,配置文件位置? 1.默认位置: Spring Boot默认的配置文件名称为application.properties,SpringApplication将从以下位置 ...

最新文章

  1. [BZOJ3329] Xorequ
  2. 老咸鱼今天告诉你用Python matplotlib 各种图绘制流线图,难怪老板放纵他
  3. C#中字节数组与字符串的来回转换
  4. 人工智能---机器学习
  5. 【SSH之旅】一步学习的步Struts1相框(三):分析控制Struts1示例
  6. linux中256错误,YUM安装遭遇: [Errno 256] No more mirrors to try
  7. boost::regex
  8. Flink1.12.0使用过程中遇到的异常
  9. 想念你 2012-10-24 23:27
  10. Python:__all__变量用法
  11. loadrunner vuser 限制修改
  12. dos2unix 安装和使用
  13. Win10系统中破解软件的注册机被自动删除的解决方法
  14. 小觅相机运行ORB-SLAM3
  15. 登录邮箱用哪个好,好用的登录邮箱推荐
  16. 【DL-安装遇错】解决出现 pip‘s dependency resolver does not currently take into account all the packages that..
  17. FormData 对象上传二进制文件
  18. 微信小程序服务器和app互通,解读:App 与小程序的互通能力和限制
  19. python爬虫爬取qq音乐热歌榜的歌曲到本地
  20. 抢购软件能用Java写吗_茅台抢购脚本详细教程!!!另已将茅台抢购做成了一个软件!!!...

热门文章

  1. eclipse 达梦 连接_达梦Hibernate Spring集成开发示例
  2. python configuration is still_通过Python配置关闭Release优化
  3. 产品经理入门——PM
  4. 从零开始html css,HTML/CSS从零开始-常用属性(三)
  5. vb编程转为c语言,C语言,VB编程题
  6. c语言线性表的逆转,数据结构(C语言)设有一个线性表E,将线性表逆置,要求逆线性表占? 爱问知识人...
  7. markdownpad2 html渲染组件出错_Day68 Django forms组件
  8. 用python实现todolist_So easy !用 Python 开发一个todolist
  9. TCP三次握手原理,你真的了解吗?
  10. Redis 宝典 | 基础、高级特性与性能调优