zoukankan      html  css  js  c++  java
  • spring-cloud整合nacos做配置中心

    废话不多说,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();
        }
    }

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

    至此整合完毕!

  • 相关阅读:
    SQL强化
    JSP深入
    会话Session和cookie
    SQL快速入门
    小程序 + node koa2 session存储验证码碰到最大的坑,(喜极而泣 /狗头)
    mongoose 数据如果存在更新 不存在插入
    vue 相同路由不同参数跳转时,不刷新
    因为自己的小服务器读取太慢,弄一个本地的mysql
    git 提交代码不想包括那个文件,比如node_modules
    js中 ! 和 !!
  • 原文地址:https://www.cnblogs.com/wiliamzhao/p/13673256.html
Copyright © 2011-2022 走看看