1、Config手动刷新
a、使用@RefreshScope注解
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 这边的@RefreshScope注解不能少,否则即使调用/refresh,配置也不会刷新
*/
@RestController
@RefreshScope
public class ConfigClientController {
@Value("${env}")
private String env;
@Value("${password}")
private String password;
@Value("${username}")
private String username;
@GetMapping("/config/profile")
public String hello() {
return this.env+","+this.password+","+this.username;
}
}
b、post请求config客户端的/refresh端点
http://localhost:6062/refresh
再次访问http://localhost:6062/config/profile,发现配置文件为最新配置。
2、Config自动刷新
1、WebHooks动态刷新
2、spring-cloud-bus动态刷新