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();
    }
}

最后大家可以请求一下配置里的参数验证一下,我就不贴验证的代码了,很简单

至此整合完毕!

posted @ 2020-09-15 15:14  william_zhao  阅读(2224)  评论(0编辑  收藏  举报