服务端:
pom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Edgware.SR4</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
启动类:
@EnableConfigServer
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class ServerApplication {
public static void main(String[] args) {
new SpringApplicationBuilder(ServerApplication.class).web(true).run(args);
}
}
application.properties文件:
# 调用本地配置
spring.profiles.active=native
#windows环境 file:/// linux file://
spring.cloud.config.server.native.searchLocations=file:///${user.dir}/src/main/resources
#git配置
#spring.cloud.config.server.git.uri=
#spring.cloud.config.server.git.search-paths=
#spring.cloud.config.server.git.username=
#spring.cloud.config.server.git.password=
application-test.properties文件
test=qqqqqqqqqq
客户端:
pom.xml
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Edgware.SR4</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
启动类:
@SpringBootApplication
public class ClientApplication {
public static void main(String[] args) {
SpringApplication.run(ClientApplication.class, args);
}
}
application.properties
server.port=8082
management.security.enabled=false
security.basic.enabled=false
bootstrap.properties
spring.cloud.config.profile=test
spring.cloud.config.uri=http://192.168.1.121:8080
测试类
@RefreshScope
@RestController
public class Test {
@Value("${test}")
String test;
@GetMapping("test")
public String test(){
return test;
}
}
刷新配置: curl -X POST http:localhost:8082/refresh