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

11 浏览
0 Comments

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

我有两个项目,名称分别为simple-core-implsimple-core-web。这两个项目都是基于spring的,并且都有一个父项目simple-core。在simple-core-impl项目中,我有一个simple-impl-config.xml文件,在simple-core-web项目中,我有一个simple-web-config.xml文件。

我有一个bean,它的类是simple service,它有一个方法返回一个消息"hello World"。我想在simple-web-config.xml中导入simple-impl-config.xml,以便该bean可以在simple-core-web项目中的控制器中使用。

simple-core-web项目有一个simple-core-impl项目的jar包。

请告诉我如何在一个项目的spring-config.xml中导入另一个项目的spring-config.xml,以便通过导入所有第一个项目的bean,这些bean在其他项目中都可以使用?我不想重写所有的bean。

0
0 Comments

问题的出现原因:在一个项目的spring-config.xml文件中,想要引入另一个项目的spring-config.xml文件。

解决方法:使用标签导入另一个项目的spring-config.xml文件。

解决方法示例代码:


参考资料:

- [Composing XML-based configuration metadata](http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-factory-xml-import)

- [Resources](http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/resources.html)(这里解释了classpath:部分的含义)

如果遇到相同的情况,但是只使用注解配置类而不是spring-config.xml文件,可以使用@Import注解导入其他配置类。

解决方法示例代码:

@Configuration
@Import(OtherConfig.class)
public class AppConfig {
    // Configuration code
}

通过以上方法,可以将一个项目的spring-config.xml文件导入到另一个项目的spring-config.xml文件中,或者将一个项目的注解配置类导入到另一个项目的注解配置类中。

0
0 Comments

问题出现的原因是使用Ricardo建议的导入方法无法正常工作。解决方法是使用以下语句进行导入:

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

文章标题:如何将一个项目的spring-config.xml导入到另一个项目的spring-config.xml中?

在某些情况下,按照Ricardo的建议进行导入无法正常工作。但是,可以通过以下语句实现导入:

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

0
0 Comments

问题出现的原因是在一个项目的spring-config.xml文件中,需要引入另一个项目的spring-config.xml文件。解决方法是使用标签来引入另一个项目的配置文件,并使用classpath*:来在类路径中搜索文件。

具体的解决方法如下:


这里的*表示在类路径中搜索名为spring-config.xml的文件。这样,不论该文件位于类路径的哪个位置,都可以被引入。

此外,还可以参考以下链接获得更多相关信息:

- Divide Spring configuration across multiple projects: [链接](https://stackoverflow.com/questions/5092133)

- Spring classpath prefix difference: [链接](https://stackoverflow.com/questions/3294423)

需要注意的是,如果标签位于另一个模块中,classpath*:仍然可以正常使用。另外,使用*进行搜索时,如果类路径中没有找到任何文件,也不会抛出错误。

0