对于一个大型应用来讲,可能存在多个配置文件,在启动Spring容器的时候,可以通过一个String数组指定这些配置文件。
Spring还允许通过将多个配置文件引入到一个文件中,进行配置文件的集成,这样在启动Spring容器的时候,仅需要指定这个合并好的配置文件即可。
比如
"classpath:com/xgj/ioc/lookup/beans.xml"/>
id="pilot" class="com.xgj.ioc.scope.Pilot" p:plane-ref="plane" />
id="plane" class="com.xgj.ioc.scope.Plane"/>
resource支持Spring标准的资源路径。 关于resource的特性 请参考 利用Spring提供的Resource/ResourceLoader接口操作资源文件
需要指出的是,如果一个配置文件a.xml引用了b.xml中的bean ,并不一定需要通过import引入b.xml ,只需要保证在启动Spring容器时,a.xml和b.xml都在配置文件列表中即可。
区别在于,如果a.xml采用import引入了b.xml,相当于a.xml一个文件就包含了a.xml和b.xml, 因此Spring容器只需要加载a.xml文件即可,否则就需要在Spring启动时,同时加载两个配置文件,以便在内存中对两个配置文件进行合并。
对于大型应用来讲,为了防止开发时配置文件的资源竞争,或者为了使模块便于拆卸,往往每个模块都拥有直接独立的配置文件, 应用层面提供可一个整合的配置文件,通过import将各个模块整合起来。这样,在启动容器时,只需要加载这个整合的配置那文件即可