springboot整合nacos

一.需求

    每次当我们配置相关环境配置文件时,难免需要实时做好历史记录以及回滚工作,而人工去手动回滚配置需要大量时间,所有有了配置中心来统一管理服务的配置

二.工具

    Nacos:支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、动态配置服务(可以做配置中心)、动态 DNS 服务。

三.部署nacos

   linux环境:

git clone https://github.com/alibaba/nacos.git

cd nacos/

mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U  

ls -al distribution/target/

// change the $version to your actual path
cd distribution/target/nacos-server-$version/nacos/bin

sh startup.sh -m standalone

   windows环境

     1. 打开链接https://github.com/alibaba/nacos/releases 下载

     springboot整合nacos_第1张图片

     2. 解压

     3.进入nacos\nacos\distribution\target\nacos-server-1.2.1\nacos\bin目录,然后点击startup.cmd

       springboot整合nacos_第2张图片

      springboot整合nacos_第3张图片

   配置自己数据库

      1.打开目录nacos\nacos\distribution\target\nacos-server-1.2.1\nacos\conf,修改application.properties配置文件

      springboot整合nacos_第4张图片

           springboot整合nacos_第5张图片

         2.将该目录的shcema.sql文件导入本地数据库

         springboot整合nacos_第6张图片

     

    登录Nacos

        登录http://localhost:8848/地址(初始账号密码为 nacos/nacos)

         springboot整合nacos_第7张图片

         

四.springboot整合nacos

     相关依赖:

       springboot最好在2.0.0以上



    4.0.0

    com.maxnerva.cloud
    maxsphere-nacos
    1.0.0

    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.9.RELEASE
        
    

    
        10.01.01
        1.8
        0.2.1.RELEASE
        1.1.28
        Greenwich.SR3
        0.2.1.RELEASE
    

    
        
            
                org.springframework.cloud
                spring-cloud-dependencies
                ${spring-cloud.version}
                pom
                import
            
            
            
                org.springframework.cloud
                spring-cloud-alibaba-dependencies
                ${spring-cloud-alibaba.version}
                pom
                import
            
        
    

    

        
            org.springframework.boot
            spring-boot-starter-web
        

        
        
            org.springframework.boot
            spring-boot-starter-aop
        

        
            org.springframework.boot
            spring-boot-starter-actuator
        

        
            com.alibaba
            fastjson
            ${fastjson.version}
        
        
            org.projectlombok
            lombok
            true
        

        
        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-config
            ${nacos.config.vsersion}
        
        
        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-discovery
            ${nacos.config.vsersion}
        
        
            com.alibaba
            druid-spring-boot-starter
            1.1.10
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    

  配置文件

     1.application.yaml:

spring:
  application:
    name: maxsphere-nacos
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848

     2.bootstrap.properties

#指定开发环境
spring.profiles.active=dev
#服务器地址
spring.cloud.nacos.config.server-addr=localhost:8848
#指定配置群组 --如果是DEFAULT_GROUP组 则可以省略群组配置
spring.cloud.nacos.config.group=DEFAULT_GROUP
#文件名 -- 如果没有配置则默认为 ${spring.appliction.name}
spring.cloud.nacos.config.prefix=nacos-admin
#指定文件后缀
spring.cloud.nacos.config.file-extension=properties

  业务处理

    1.启动类:(注意加@EnableDiscoveryClient注解)

@EnableDiscoveryClient
@SpringBootApplication
public class MaxsphereApplication {

    public static void main(String[] args) {
        SpringApplication.run(MaxsphereApplication.class, args);
    }
}

    2.controller层实现

@RestController
@RequestMapping("/getConfig")
public class ConfigController {

    @Value("${test.name: false}")
    private String username;

    @GetMapping("/getName")
    public String getConfig(){
        return username;
    }
}

  Nacos添加配置

     springboot整合nacos_第8张图片

     springboot整合nacos_第9张图片

  访问springboot服务

       访问:http://localhost:10017/getConfig/getName

           springboot整合nacos_第10张图片

      

你可能感兴趣的:(java-spring)