我有一些项目都使用一个项目用于数据模型.这些项目中的每一个都有自己的applicationContext.xml文件,其中包含大量重复数据.
我想要一个modelContext.xml文件,另一个用于我的ui.xml等.
我可以这样做吗?
从Spring Docs(v 2.5.5 Section 3.2.2.1.):
将容器定义拆分为多个XML文件通常很有用.然后,加载从所有这些XML片段配置的应用程序上下文的一种方法是使用具有多个Resource位置的应用程序上下文构造函数.使用bean工厂,可以多次使用bean定义读取器依次读取每个文件中的定义.
通常,Spring团队更喜欢上述方法,因为它使容器配置文件不会意识到它们正在与其他文件组合.另一种方法是使用一个或多个元素来从另一个文件(或多个文件)加载bean定义.我们来看一个样本:
在此示例中,从3个文件,services.xml,messageSource.xml和themeSource.xml加载外部bean定义.所有位置路径被认为相对于定义文件做进口,所以services.xml中在这种情况下,必须在同一个目录或类路径位置作为文件做进口,而messageSource.xml和themeSource.xml来必须在资源位于导入文件位置下方的位置.正如您所看到的,实际上忽略了一个前导斜杠,但考虑到它们被认为是相对路径,最好不要使用斜杠.根据Spring Schema或DTD,正在导入的文件的内容必须是有效的XML bean定义文件,包括顶级元素.