我目前的项目有多个模块(非Java 9模块),我正在寻找一种在基于Spring的应用程序模块之间进行松散耦合的好方法。
根据我的理解,我可以@Import配置类(来自其他应用程序模块)。但它有一些局限性:
这些缺点会限制通过实现相同API的等效模块替换模块的能力。
我正在考虑使用模块API的接口,而@Configuration类将实现API接口。并且@Import将被对暴露的API对象的依赖所取代。我在这里有原型代码https://github.com/tha2015/springmodules/blob/master/src/main/java/dsl/Main.java
是否有更好的方法在应用程序模块之间进行松散耦合?
感谢。