目标:SpringCloud Alibaba Nacos Config统一配置和动态更新
工具:IDEA–2020.1、Nacos、本地服务器(作为测试)
学习目标:学习如何使用Nacos作为Dubbo服务的注册中心
本次学习的工程下载链接放到文本最后面
- Nacos的基本使用
在SpringCloud中,创建一个Springboot项目,添加Springcloud依赖:
<properties> <java.version>1.8</java.version> <spring-cloud.version>Greenwich.SR2</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2.1.1.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-context</artifactId> <version>2.1.1.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
-
创建bootstart.properties,并在bootstart.properties中添加Nacos Server的连接地址:
spring.application.name=spring-cloud-nacos-config-sample
spring.cloud.nacos.config.server-addr=192.168.77.1:8848
spring.cloud.nacos.config.prefix=example -
在Nacos Console中创建如下配置:
-
启动类中配置如下:
@SpringBootApplication public class SpringCloudNacosConfigApplication { public static void main(String[] args) { ConfigurableApplicationContext context = SpringApplication.run(SpringCloudNacosConfigApplication.class, args); //单次读取 //从Environment中读取配置 String info=context.getEnvironment().getProperty("info"); System.out.println(info); } }
- 获得输出结果如下:
2020-05-09 14:22:08.253 INFO 16092 --- [ main] c.x.SpringCloudNacosConfigApplication : Started
SpringCloudNacosConfigApplication in 6.065 seconds (JVM running for
7.097)
Nacos Server Data : Hello World 111
- 动态更新配置就该启动类中的代码:
//动态更新配置
while(true){
String info=context.getEnvironment().getProperty("info");
System.out.println(info);
Thread.sleep(2000);
}
评论区