springcloud中使用consul作为配置中心
1、pom.xml配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!--
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-config</artifactId>
</dependency>
2、 bootstrap.yml配置
spring:
cloud:
consul:
host: 192.168.9.130
port: 8500
config:
enabled: true # 默认true
format: YAML # 表示consul上面文件的格式 有四种 YAML PROPERTIES KEY-VALUE FILES
data-key: data #表示consul上面的KEY值(或者说文件的名字) 默认是data
#prefix 设置配置值的基本文件夹 ,默认为 config
#defaultContext 设置所有应用程序使用的文件夹名称,默认为applications
profileSeparator: '::' #设置用于使用配置文件在属性源中分隔配置文件名称的分隔符的值,默认为",",可修改为"::"
profiles:
active: dev
3、登录consul web控制台,添加KV 存储
key为: config/ecshop-sysService::dev/data (默认前缀目录为config,默认键名为data,应用名称和profile间采用了::作分隔符)
值内容为 :
myMsg: 你好,这是一条欢迎消息2
4 、测试访问代码
@Value("${myMsg}")
private String myMsg;
@ResponseBody
@RequestMapping("/getMyMsg")
public String getMyMsg() {
System.out.println(myMsg);
return myMsg;
}
5 、 springcloud consul 官网文档
http://cloud.spring.io/spring-cloud-static/spring-cloud-consul/1.3.4.RELEASE/single/spring-cloud-consul.html