废话不多说,nacos是什么我就不解释了。直接开始
1.下载,安装nacos
本人使用Git拉取,感觉Git挺好用 从 Github 上下载源码方式 git clone https://github.com/alibaba/nacos.git
cd nacos/
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U ls -al distribution/target/ cd distribution/target/nacos-server-$version/nacos/bin
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.创建配置(在创建的某个命名空间创建配置)
点击右上角+
填写dataid group 寻找文件后缀,编写配置内容
至此配置创建完成!
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(); } }
最后大家可以请求一下配置里的参数验证一下,我就不贴验证的代码了,很简单
至此整合完毕!