对于一个大型应用来讲,可能存在多个配置文件。我们可以在启动 spring 容器时,通过 string 数组来指定这些配置文件 。
spring 还可以通过 <import> 将多个配置文件引入到一个文件中,集成这些配置文件,这样在启动 spring 容器时,仅需要指定这个主配置文件即可 。 比如以下的这个主配置文件:
1
2
|
< import resource= "classpath:beans2.xml" /> <bean id= "author" class = "net.deniro.spring4.bean.author" /> |
假设 beans2.xml 里面已经配置了 book 类,那么 spring 容器通过这个主配置文件即可加载这两个 bean 信息咯 o(∩_∩)o哈哈~
如果一个配置文件 a.xml 引用了 b.xml 中的 bean , 并不一定需要通过 import 引入 b.xml , 只需要保证在启动 spring 容器时, a.xml 和 b.xml 都在配置文件列表中即可 。
这两种配置方式的区别在于,如果在 a.xml 中采用 import 引入了 b.xml ,相当于 a.xml 一个文件就包含了这两个配置文件的所有信息, 因此 spring 容器只需要加载 a.xml 文件即可;否则就需要在 spring 启动时,同时加载两个配置文件,以便在内存中对两个配置文件进行合并 。
我们可以通过 <import> 来引入多个外部配置文件,resource 属性支持 spring 的标准资源路径。
大型应用为了防止开发时发生配置文件资源竞争现象,或者为了使模块便于拆分,往往每个模块都拥有直接独立的配置文件。我们可以在应用层面提供一个可整合的配置文件,通过 <import> 将各个模块整合起来 。 这样,在启动容器时,只需要加载这个整合后的配置文件就可以啦
总结
以上所述是小编给大家介绍的spring 整合多个配置文件的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
原文链接:https://www.jianshu.com/p/b9dc954981f2