*Spring Cloud 学习笔记(二)-Spring Cloud Config Server
**搭建过程
在上一篇搭建了基本的eureka的server和client用来实验,今天实验spring cloud config用以实现分布式配置管理中心
话不多说,创建新的模块wat-spring-config当作server如下图
为了后续的测试,需要在git上新建一个工程,增加分支dev,之后新建文件wat-spring-config-server-dev.yml内容如下:
config: server: test: this is a test
修改工程的pom文件配置如下:
4.0.0 com.wat wat-spring-cloud-study ${project.version} wat-spring-config wat-spring-config http://maven.apache.org org.springframework.cloud spring-cloud-starter-config org.springframework.boot spring-boot-starter-web org.springframework.cloud spring-cloud-config-server 增加配置文件/src/main/resources/application.yml内容如下:
# spring cloud settingsspring: config: name: wat-spring-config-server cloud: config: label: dev profile: dev server: git: uri: http://**************.git username: ********* password: *********# server portserver: port: 8888
在这做一点说明,在config的配置文件中存在三个值spring.cloud.config.label、spring.cloud.config.profile、spring.config.name这三个值用做识别git上面的配置文件位置,参照如下规则:
/{application}/{profile}[/{label}]
/{application}-{profile}.yml /{label}/{application}-{profile}.yml /{application}-{profile}.properties /{label}/{application}-{profile}.properties•application:表示应用名称,在client中通过spring.config.name配置
•profile:表示获取指定环境下配置,例如开发环境、测试环境、生产环境 默认值default,实际开发中可以是 dev、test、demo、production等 •label: git标签,默认值master添加代码src/main/java/org/wat/spring/config/App.java
package org.wat.spring.config;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.cloud.config.server.EnableConfigServer;import org.springframework.context.annotation.Configuration;import org.springframework.web.bind.annotation.RestController;@Configuration@EnableAutoConfiguration@RestController@EnableConfigServerpublic class App { public static void main(String[] args) { SpringApplication.run(App.class, args); }}
以本程序为例启动程序,访问http://localhost:8888/wat-spring-config-server/dev/dev/,可以看到会返回一个json
{ "name": "wat-spring-config-server", "profiles": [ "dev" ], "label": "dev", "version": "20308dee8ac6e1e9b47e781323dbf136953161ea", "state": null, "propertySources": [ { "name": "http://*******.git/wat-spring-config-server-dev.yml", "source": { "config.server.test": "this is a test" } } ]}
第二天由于遇到了些问题,因此发布的晚了点,希望能够坚持住
转载请注明出处: