SpringCloud集成Nacos并使用

导读:本篇文章讲解 SpringCloud集成Nacos并使用,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

📖摘要


今天分享下 —— SpringCloud 集成 Nacos 并使用 的一些基本知识,欢迎关注!

欢迎阅读,总结系列:SpringCloudAlibaba 实战搭建


🌂项目父模块 pom.xml 配置

			<!-- Alibaba Nacos 配置 -->
            <dependency>
                <groupId>com.alibaba.nacos</groupId>
                <artifactId>nacos-client</artifactId>
                <version>${nacos.version}</version>
            </dependency>

            <!-- 统一引入 SpringCloud Alibaba 微服务 -->
            <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>

            <!-- 引入 sentinel 服务降级与熔断依赖 -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
                <version>${spring-cloud-alibaba.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- 统一引入 SpringCloud 微服务 -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

😊子模块 pom.xml 配置

        <!-- SpringCloud Alibaba Nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

        <!-- SpringCloud Alibaba Nacos Config -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>

        <!-- SpringCloud Netflix Hystrix -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>

        <!-- 引入 sentinel 服务降级与熔断依赖 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>

😘在 nacos 上编写配置文件

  1. 创建命名空间
    在这里插入图片描述
  2. 创建配置文件在这里插入图片描述
  3. 配置文件创建在这里插入图片描述
  4. 注意文件名称:名字-环境,yml 这样命名才不容易读取错误在这里插入图片描述

😘更改 application 配置文件

  1. 修改名称为 bootstrap.yml ,修改后的文件读取优先级高于 application
  2. yml 配置,如下会读取 dev 环境配置
# Tomcat
server:
  port: 9200

# Spring
spring:
  application:
    # 应用名称
    name: fckj-aouth
  profiles:
    # 环境配置
    active: dev
  # 允许覆盖bean定义
  main:
    allow-bean-definition-overriding: true
  # could-nacos注册中心配置
  cloud:
    nacos:
      discovery:
        # 服务注册地址
        server-addr: ip:8848
        #ip: 42.192.82.172
      config:
        enabled: true # 如果不想使用 Nacos 进行配置管理,设置为 false 即可
        # 配置中心地址
        server-addr: ip:8848
        # 尽量和应用名称一致
        prefix: ${spring.application.name}
        # 配置文件格式
        file-extension: yml # 配置内容的数据格式,默认为 properties
        # 命名空间 id 配置,对应你创建的命名空间的 id值,用于读取不同环境的配置信息
        namespace: 3d5be776-0d3c-410f-bd0e-bbab757a3d2d
        # 配置刷新
        refreshable-dataids: ${spring.cloud.nacos.config.prefix}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
  1. 编写 controller 查看是否获取配置成功, @RefreshScope 注解原生态使用即可
package com.wzfckj.fckj_aouth.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Description: 配置刷新controller
 * @BelongsProject: fckj_restaurant_admin
 * @BelongsPackage: com.wzfckj.fckj_aouth.controller
 * @Author: ChenYongJia
 * @CreateTime: 2021-03-25 16:33
 * @Email: chen87647213@163.com
 * @Version: 1.0
 */
@RefreshScope
@RestController
@RequestMapping(value = "/config")
public class ConfigController {

    /**
     * 读取 username 配置信息
     */
    @Value(value = "${username:}")
    private String userName;

    /**
     * 读取 redis 配置信息
     */
    @Value(value = "${spring.redis.lettuce.pool.max-active:}")
    private String redis;

    /**
     * 获取配置内容
     *
     * @return
     */
    @RequestMapping(value = "/get")
    public String getConfig() {
        System.out.println(userName);
        System.out.println(redis);
        return userName + "" + redis;
    }

}
  1. 访问查看是否获取到 nacos 配置信息即可

👍设置环境变量

使用 vim 编辑器修改 bash_profile 配置文件,按 i 开始编辑,编辑完成按 esc 输入 :wq! 进行保存并退出。

vim ~/.bash_profile

# 添加下述内容,jdk路径按自己安装路径来配置
export JAVA_HOME=/root/training/jdk1.8.0_281
export PATH=$PATH:$JAVA_HOME/bin

生效环境变量

source ~/.bash_profile

查看jdk版本

java -version

如下图所示即为成功

在这里插入图片描述

最后感谢大家耐心观看完毕,留个点赞收藏是您对我最大的鼓励!


🎉最后

  • 更多参考精彩博文请看这里:《陈永佳的博客》

  • 喜欢博主的小伙伴可以加个关注、点个赞哦,持续更新嘿嘿!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/97360.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!