Maven项目中的每个模块都应该有自己的Spring应用程序上下文吗?

Luc*_*uke 7 java spring spring-mvc java-ee maven

我正在创建一个应用程序,我将项目分成不同的模块,如(域,存储库,服务和Web),以及许多用于邮件发送,文本格式化等的通用maven项目.我也使用Spring.

目前我只在Web项目中有Spring应用程序上下文文件.但是,由于我正在为文本格式化等创建一般的pupose项目,这些项目封装了实际应用程序中的库(例如freemarker),我不喜欢我必须在Web项目的Spring应用程序上下文文件中指定库依赖配置.

问题是,为每个模块分配一个单独的Spring应用程序上下文文件,然后在我使用它们的项目中导入上下文文件是否正确.这是正确的方法吗,还是有更好的方法?

我感兴趣的是当我使用XML文件而不是JavaConfig时如何解决这个问题.

Pet*_*erg 1

我赞同蜘蛛鲍里斯关于基于注释的配置的评论。

我对这个问题的解决方案是首先在模块(以及任何地方)中使用基于注释的配置。

第二步是配置父项目以对模块的包进行组件扫描。

最后,如果注释没有完全处理某些内容,则很可能需要仔细配置才能在父级内部工作。

这是关于基于注释的配置的较新参考。大多数情况可以通过一两个简单的注释来处理。检查一下@Value它可用于设置属性等的值。