我有几个spring服务项目,它们都运行在不同的服务器上,但是共享许多相同的配置文件和初始化的bean。为了减少冗余,我希望有一个单独的项目可以提供大部分spring配置和bean。理想情况下,该项目不会是@springboot应用程序,而是某种类型的无服务器项目,它具有快照和版本。这样,我就可以把整个项目作为一个独立的依赖项
<dependency>
<groupId>my-group</groupId>
<artifactId>external-config-project</artifactId>
<version>1.0.0</version>
</dependency>
我听说过springcloud配置和springcloud函数,但是我不知道如何使用它们,或者这是否就是我想要的?在文档中,它们有以下代码块:
@Configuration
@EnableAutoConfiguration
@RestController
public class Application {
@Value("${config.name}")
String name = "World";
@RequestMapping("/")
public String home() {
return "Hello " + name;
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
虽然它可能不是一个“spring应用程序”,但在我看来它仍然是一个独立的运行应用程序?
编辑:我已经有一个单独的软件来处理发布/快照上传,但不知道它将如何与这种风格的项目工作。
1条答案
按热度按时间ttcibm8c1#
您只需将共享的spring配置模块打包为jar并导入到您的服务中。在服务的scan packages注解中添加共享模块的包名,以便spring扫描它们。
spring cloud config是一个服务器。别以为这就是你想要的