如何将一个项目的spring-config.xml导入到另一个项目的spring-config.xml中?
如何将一个项目的spring-config.xml导入到另一个项目的spring-config.xml中?
我有两个项目,名称分别为simple-core-impl
和simple-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。
问题的出现原因:在一个项目的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文件中,或者将一个项目的注解配置类导入到另一个项目的注解配置类中。
问题出现的原因是在一个项目的spring-config.xml文件中,需要引入另一个项目的spring-config.xml文件。解决方法是使用
具体的解决方法如下:
这里的*表示在类路径中搜索名为spring-config.xml的文件。这样,不论该文件位于类路径的哪个位置,都可以被引入。
此外,还可以参考以下链接获得更多相关信息:
- Divide Spring configuration across multiple projects: [链接](https://stackoverflow.com/questions/5092133)
- Spring classpath prefix difference: [链接](https://stackoverflow.com/questions/3294423)
需要注意的是,如果