我使用以下Gradle依赖配置了一个非常简单的Sping Boot 应用程序:
implementation 'org.springframework.cloud:spring-cloud-starter-bootstrap'
我们的想法是将Spring Cloud Config Server嵌入到应用程序中。bootstrap.yml
文件的内容如下:
spring:
cloud:
config:
server:
bootstrap: true
git:
username: git
password: <personal-access-token>
uri: <github-uri>
远程GitHub存储库包含这个application.yml
文件:
server:
port: 8280
当我启动Sping Boot 应用程序时,它会正确地检索远程配置,因为日志包含以下内容:
Tomcat initialized with port(s): 8280 (http)
...
Tomcat started on port(s): 8280 (http) with context path ''
我的问题是:如果我在远程GitHub存储库中放入一个名为dummy.txt
的文件,与application.yml
处于同一级别,那么从应用程序本身检索其内容的编程方式是什么?我知道使用分离的配置客户端和配置服务器,从配置客户端,我可以依靠this从配置服务器检索纯文本文件。当配置服务器嵌入到应用程序中时,如何实现相同的结果?
1条答案
按热度按时间dhxwm5r41#
到目前为止我得到的最好的解决方案是基于
org.springframework.cloud.config.server.resource.ResourceRepository
的在注解为
@Service
/@Component
的类中,..只包含以下内容:接下来,假设默认配置文件名为
default
,并且配置存储在名为main
的分支中,则以下代码行能够检索文件内容: