Spring Cloud Config是一个配置管理工具包,让你可以把配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion。
Spring Cloud Config分为两部分
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.1.5.RELEASE
com.example
demo
0.0.1-SNAPSHOT
demo
Demo project for Spring Boot
1.8
Greenwich.SR1
org.springframework.cloud
spring-cloud-config-server
org.springframework.boot
spring-boot-starter-test
test
com.google.guava
guava
25.1-jre
com.diffplug.guava
guava-cache
19.0.0
org.springframework.cloud
spring-cloud-dependencies
${spring-cloud.version}
pom
import
org.springframework.boot
spring-boot-maven-plugin
spring.application.name:configService
server.port=8888
#服务注册的Eureka Server地址
spring.cloud.config.server.native.searchLocations=D:/conf
spring.profiles.active=native //本地文件必须加此设置
文件内容
package com.example.demo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
@EnableConfigServer
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
2.2.1在pom.xml中加入以下依赖
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.1.5.RELEASE
com.example
demo
0.0.1-SNAPSHOT
demo
Demo project for Spring Boot
1.8
Greenwich.SR1
org.springframework.boot
spring-boot-starter-web
org.springframework.cloud
spring-cloud-starter-netflix-eureka-client
org.springframework.cloud
spring-cloud-starter-config
org.springframework.boot
spring-boot-starter-test
test
org.springframework.cloud
spring-cloud-netflix-core
2.1.1.RELEASE
compile
org.springframework.boot
spring-boot-starter-test
test
org.springframework.cloud
spring-cloud-dependencies
${spring-cloud.version}
pom
import
org.springframework.boot
spring-boot-maven-plugin
spring.application.name:configClientdemo3
server.port=8889
spring.cloud.config.uri= http://localhost:8888/
spring.cloud.config.discovery.enabled=true
spring.cloud.config.profile=dev //必须要设置
##spring.cloud.config.name=configClientdemo3
##spring.cloud.config.discovery.service-id=configService
package com.example.demo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@Value("${name}")
private String name;
@RequestMapping("/home")
public String home() {
return "Hello " + name;
}
}
spring.application.name:configService
server.port=8808
#服务注册的Eureka Server地址
#spring.cloud.config.server.native.searchLocations=D:/conf
#spring.profiles.active=native
spring.cloud.config.server.git.uri=https://github.com/Liu19950513/config-reop.git
[email protected]
spring.cloud.config.server.git.password=asd13579
#spring.cloud.config.server.git.search-paths=configClientdemo
##07-springcloud-config
##spring.cloud.config.discovery.service-id=config-server
##spring.cloud.config.name=config-reop
#开启Config服务发现支持
##spring.cloud.config.discovery.enabled=true
##spring.cloud.config.discovery.service-id=configService
package com.example.demo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
@EnableConfigServer
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
spring.application.name=configClientdemo
server.port=8771
spring.cloud.config.uri=http://127.0.0.1:8808/
##spring.cloud.config.discovery.enabled=true
##spring.cloud.config.label=master
spring.cloud.config.profile=dev
3.3.3 开启config-client
package com.example.demo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@Value("${name}")
private String name;
@RequestMapping("/home")
public String home() {
return "Hello " + name;
}
}