Spring教程 - 彈簧多個配置文件

2018-01-09 19:06 更新

Spring教程 - 彈簧多個配置文件


在一個大項目中,我們可能有多個Spring的bean配置文件。將每個bean定義放在單個文件中很難維護(hù)。并且它們可以存儲在不同的文件夾結(jié)構(gòu)中。

例如,我們可能在common文件夾中有一個Spring-Common.xml,連接文件夾中的Spring-Connection.xml,以及ModuleA文件夾中的Spring-ModuleA.xml。

逐個加載

加載配置文件的一種方法是逐個加載它們。

例如,我們把所有上面的三個xml文件放在classpath中

project-classpath/Spring-Common.xml
project-classpath/Spring-Connection.xml
project-classpath/Spring-ModuleA.xml

然后我們可以使用下面的代碼來加載多個Spring bean配置文件。

ApplicationContext context = 
    new ClassPathXmlApplicationContext(new String[] {"Spring-Common.xml",
              "Spring-Connection.xml","Spring-ModuleA.xml"});

上面的代碼將所有文件名逐個傳遞給 ClassPathXmlApplicationContext 。問題是,如果我們需要添加新的文件名,我們必須更改代碼。



導(dǎo)入xml文件

Spring允許我們將所有Spring bean配置文件組織成一個XML文件。

為了托管所有配置文件,我們創(chuàng)建了一個新的Spring-All-Module.xml文件,并導(dǎo)入其他Spring bean文件。

<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
  http://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>

將此文件放在項目類路徑下。

project-classpath/Spring-All-Module.xml

我們可以加載單個xml文件,如下所示:

ApplicationContext context = 
    new ClassPathXmlApplicationContext("Spring-All-Module.xml");


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號