spring-cloud整合nacos做配置中心
废话不多说,nacos是什么我就不解释了。直接开始
1.下载,安装nacos
百度网盘链接:https://pan.baidu.com/s/1iCx_itkgSRNzP9XCidvMtw
提取码:82zq

2.启动服务器
Linux/Unix/Mac
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalone
Windows
启动命令:
cmd startup.cmd
或者双击startup.cmd运行文件。
***本人测试用的Windows启动,注意默认是集群启动,需要数据库的,会启动失败,打开startup.cmd文件修改模式为standalone单机模式

3.访问nacos
http://192.168.72.1:8848/nacos/index.htm

4.创建命名空间(相互隔离的,一般以环境命名)

5.创建配置(在创建的某个命名空间创建配置)
点击右上角+

填写Data ID 和 Group 寻找文件后缀,编写配置内容 (Data ID要和服务名一致)

至此配置创建完成!
6.spring-cloud整合nacos作为配置中心
a.引入alibaba的依赖
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Greenwich.SR1</spring-cloud.version>
<spring-cloud-alibaba.version>2.1.0.RELEASE</spring-cloud-alibaba.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</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>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
b.配置文件yml
配置文件改名为 bootstrap.yml
spring:
application:
name: member #项目名称
main:
allow-bean-definition-overriding: true #springboot 2.1需要设置
cloud: nacos: config: server-addr: 127.0.0.1:8848 #nacos地址 file-extension: yml #配置文件后缀 namespace: 76284517-01e8-40c7-a17d-a120e2428498 #命名空间 group: ZJF_GROUP #组
***注意项目名称要和nacos里配置文件名一样,Dataid是由项目名和配置文件后缀拼接而成的
c.使用配置
@ConfigurationProperties和@value都可以
自动刷新配置要将@RefreshScope加在配置类上
@Data @Component @ConfigurationProperties("webserver") @RefreshScope public class WebserverConfig { private String name; }
d.配置作用在bean上的使用方式
自动刷新配置要将@RefreshScope加在具体的bean上
@MapperScan("com.yzj.api.member.mapper")
@Configuration
public class MybatisConfig {
@RefreshScope
@ConfigurationProperties("spring.datasource")
@Bean
public DataSource dataSource() {
return DataSourceBuilder.create().build();
}
/**
* mybatis-plus分页插件<br>
* 文档:http://mp.baomidou.com<br>
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}
最后大家可以请求一下配置里的参数验证一下,我就不贴验证的代码了,很简单
至此整合完毕!


浙公网安备 33010602011771号