如何将一个项目的 spring-config.xml 导入到另一个项目的 spring-config.xml 中?

我有两个项目的名称 simple-core-implsimple-core-web

两个项目都是 spring based,并且都有一个名为 simple-core的父项目。

I have simple-impl-config.xml in simple-core-impl project and simple-web-config.xml in simple-impl-config.xml.

我有一个具有类: simple service的 bean,它有一个方法,返回一个消息“ hello World”。

我想在 simple-web-config.xml中导入 simple-impl-config.xml,这样 bean 就可以在 simple-core-web项目中的控制器中使用了。

simple-core-web项目有一个罐子的 simple-core-impl项目。

所以请告诉我,我如何才能导入 spring-config.xml的一个项目到另一个项目的 spring-config.xml,使所有的第一个可用到其他项目只是导入?

我不想重写所有的豆子。

192887 次浏览
<import resource="classpath:spring-config.xml" />

Reference:

肖恩回答的一个小小的变化:

<import resource="classpath*:spring-config.xml" />

带星号以便在类路径中的任何位置弹出搜索文件‘ spring-config.xml’。

另一个参考: 跨多个项目划分 Spring 配置

Spring 类路径前缀差异

由于某些原因,李嘉图建议的导入并不适合我。我得到了它的工作与以下声明:

<import resource="classpath*:/spring-config.xml" />

您必须在模块 A 中添加模块 B 的 jar/war,并在新的 spring-module 文件中添加类路径。加上这一行

Spring-moduleA.xml-是模块 A 中资源文件夹下的一个文件。通过添加这一行,它将所有 bean 定义从模块 A 导入到模块 B。

MODULE B/spring-moduleB. xml


import resource="classpath:spring-moduleA.xml"/>


<bean id="helloBeanB" class="basic.HelloWorldB">
<property name="name" value="BMVNPrj" />
</bean>

下面是基于注释的示例:

@SpringBootApplication
@ImportResource({"classpath*:spring-config.xml"})
public class MainApplication {


public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
<import resource="classpath*:spring-config.xml" />

这是最适合类路径配置的一种。 特别是当您在类路径中的另一个项目中搜索. xml 文件时。