SpringCloud集成Nacos并使用

📖摘要


今天分享下 —— 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

如下图所示即为成功

在这里插入图片描述

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


🎉最后

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

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

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
要在Spring Cloud集成Nacos,需要添加以下依赖项: ``` <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> ``` 然后在`bootstrap.yml`或`bootstrap.properties`中配置以下内容: ``` spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR:localhost:8848} spring.cloud.nacos.config.namespace=${NACOS_NAMESPACE:} spring.cloud.nacos.config.group=${NACOS_GROUP:DEFAULT_GROUP} spring.cloud.nacos.config.prefix=${NACOS_CONFIG_PREFIX:} spring.cloud.nacos.config.file-extension=${NACOS_CONFIG_FILE_EXTENSION:properties} spring.cloud.nacos.config.shared-dataids=${NACOS_CONFIG_SHARED_DATAIDS:} spring.cloud.nacos.config.refreshable-dataids=${NACOS_CONFIG_REFRESHABLE_DATAIDS:} spring.cloud.nacos.discovery.server-addr=${NACOS_SERVER_ADDR:localhost:8848} spring.cloud.nacos.discovery.namespace=${NACOS_NAMESPACE:} spring.cloud.nacos.discovery.group=${NACOS_GROUP:DEFAULT_GROUP} ``` 其中,`NACOS_SERVER_ADDR`是Nacos Server的地址,`NACOS_NAMESPACE`是命名空间,`NACOS_GROUP`是配置和服务注册的分组,`NACOS_CONFIG_PREFIX`是前缀,`NACOS_CONFIG_FILE_EXTENSION`是配置文件后缀,`NACOS_CONFIG_SHARED_DATAIDS`是共享配置的dataids,`NACOS_CONFIG_REFRESHABLE_DATAIDS`是动态刷新的dataids。可以根据实际情况进行修改。 这样就完成了NacosSpring Cloud集成

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈永佳

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值