对于一个项目,我们将开发一些微服务。他们将有许多常见的部分,例如配置类,过滤器... 我寻找最佳实践和方法来开发它。
目前,我已经创建了一个通用的微服务,由所有人分叉以开发其之上的模块。但是,这样做并不方便,对一个Web服务进行某些修改可能会给通用MS的下一次合并带来一些困难。
您有任何想法进行开发还是可以激发我灵感?
感谢您的回复。
答案 0 :(得分:0)
创建一个或多个包含实现共享功能的Abstract类的库。
将一个或多个库导入每个单独的项目。
在各个项目中扩展Abstract类。
使用Spring注释(例如@Component或 @RestController)在各个项目中, 不在公共库中。
在公共库中使用一些Spring注释(例如@Scheduled)。 如果这样做,则允许各个项目覆盖这些批注中的值。 例如,
@Scheduled(initialDelayString = "${common.thing.initialDelayString:10_000}",
fixedDelayString = "${common.thing.fixedDelayString:60_000}")
示例注释包含默认值,并允许各个项目根据需要覆盖这些值。