若依前后端分离版集成nacos

这篇具有很好参考价值的文章主要介绍了若依前后端分离版集成nacos。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        根据公司要求,需要将项目集成到nacos中,当前项目是基于若依前后端分离版开发的,若依的版本为3.8.3,若依框架中整合的springBoot版本为2.5.14。Nacos核心提供两个功能:服务注册与发现,动态配置管理。

一、服务注册与发现

1、引入pom依赖

     </dependency>-->
        <!-- 在SpringBoot 2.4.x的版本之后,对配置文件加载方式进行了重构,需要导入如下的依赖;
        详情见官网:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#config-first-bootstrap -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.0.1</version>
        </dependency>

        <!-- 服务注册与发现依赖 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2021.1</version>
        </dependency>

2、bootstrap.yml配置

spring:
  # nacos配置
  cloud:
    nacos:
      discovery:
        server-addr: 10.2.XX.XX:8848
    compatibility-verifier:
      enabled: false

3、添加注解

在项目启动类上添加 @EnableDiscoveryClient 注解:

@EnableDiscoveryClient
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
public class RiskExamineApplication
{
    public static void main(String[] args)
    {
        // System.setProperty("spring.devtools.restart.enabled", "false");
        SpringApplication.run(RiskExamineApplication.class, args);
        System.out.println("(♥◠‿◠)ノ゙  若依启动成功   ლ(´ڡ`ლ)゙  \n" +
                " .-------.       ____     __        \n" +
                " |  _ _   \\      \\   \\   /  /    \n" +
                " | ( ' )  |       \\  _. /  '       \n" +
                " |(_ o _) /        _( )_ .'         \n" +
                " | (_,_).' __  ___(_ o _)'          \n" +
                " |  |\\ \\  |  ||   |(_,_)'         \n" +
                " |  | \\ `'   /|   `-'  /           \n" +
                " |  |  \\    /  \\      /           \n" +
                " ''-'   `'-'    `-..-'              ");
    }
}

4、验证

        项目启动后,登录nacos,在服务列表中,点击查询即可看到注册到nacos的服务,如下图:

若依前后端分离版集成nacos

服务名默认为yml配置里spring.application.name的名称,也可通过spring.cloud.nacos.discovery.service配置指定。

遇到问题:Your project setup is incompatible with our requirements due to following reasons:
- Spring Boot [2.5.14] is not compatible with this Spring Cloud release train

Change Spring Boot version to one of the following versions [2.3.x, 2.4.x] 


***************************
APPLICATION FAILED TO START
***************************

Description:

Your project setup is incompatible with our requirements due to following reasons:

- Spring Boot [2.5.14] is not compatible with this Spring Cloud release train


Action:

Consider applying the following actions:

- Change Spring Boot version to one of the following versions [2.3.x, 2.4.x] .
You can find the latest Spring Boot versions here [https://spring.io/projects/spring-boot#learn]. 
If you want to learn more about the Spring Cloud Release train compatibility, you can visit this page [https://spring.io/projects/spring-cloud#overview] and check the [Release Trains] section.
If you want to disable this check, just set the property [spring.cloud.compatibility-verifier.enabled=false]

解决办法:出现这个问题是由于springBoot和springCloud版本不一致导致的,如果是自己手动搭建的框架,可以根据提示将springBoot版本降到[2.3.x, 2.4.x];但是由于我用的是若依的框架,担心将springBoot版本降低后会引起其它问题,所以根据提示设置spring.cloud.compatibility-verifier.enabled=false这个属性,但是引入后发现配置不生效,最后根据研究一番之后,根据网上的提示需将配置文件名称application.yml改为bootstrap.yml,然后再引入依赖spring-cloud-starter-bootstrap 即可解决。

注意:如果只需要nacos的服务注册与发现功能,不用服务配置功能的话,一定要将服务配置的pom依赖(spring-cloud-starter-alibaba-nacos-config)去掉,否则启动时会报错:currentServerAddr:http://localhost:8848, err : connect timed out 。

二、服务动态配置与服务注册发现

1、引入pom依赖

  <!-- nacos -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2021.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>2021.1</version>
        </dependency>

2、bootstrap.yml配置

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 124.70.XX.XX:32389
        namespace: zs-smart
        group: dev
      config:
        server-addr: 124.70.XX.XX:32389
        namespace: zs-smart
        group: dev
        name: zs-smart
        file-extension: yaml
    compatibility-verifier:
      enabled: false

3、nacos配置

1)新建命名空间

若依前后端分离版集成nacos

 2) 新建配置

打开配置列表,选择刚刚创建的zs-smart,点击右上角的“+”号,如下图:

若依前后端分离版集成nacos

3)填写配置

若依前后端分离版集成nacos

然后启动项目,如果项目启动成功,即说明配置没问题! 

参考文章:Springboot集成Nacos2「服务注册与发现」 - 知乎文章来源地址https://www.toymoban.com/news/detail-410928.html

到了这里,关于若依前后端分离版集成nacos的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Ant DesignPro Vue + SpringBoot 前后端分离 - 后端微服化 + 接口网关 + Nacos

    通过Ant DesignPro Vue + SpringBoot 搭建的后台管理系统后,实现了前后端分离,并实现了登录认证,认证成功后返回该用户相应权限范围内可见的菜单。 后端采用SpringCloud构建微服,采用SpringCloud Gateway做为服务网关,采用Nacos做为统一配置中心,并在服务网关部分解决了前端跨域调

    2024年02月12日
    浏览(60)
  • ruoyi-vue(若依前后端分离版本)环境搭建 用idea 安装redis 后端配置 配置node环境 前端配置

    1.在https://gitee.com/y_project/RuoYi-Vue下载源码并解压至本地文件 2.将sql文件下的两个sql文件导入数据库生成表  3.在E:eclipsespaceoneRuoYi-Vue-masterruoyi-adminsrcmainresourcesapplication-druid.yml修改数据库名和密码 4.在E:eclipsespaceoneRuoYi-Vue-masterruoyi-adminsrcmainresourcesapplication.yml配置red

    2024年04月14日
    浏览(48)
  • 基于Ant DesignPro Vue + SpringBoot 前后端分离 - 后端微服化 + 接口网关 + Nacos + Sentinel

    通过Ant DesignPro Vue + SpringBoot 搭建的后台管理系统后,实现了前后端分离,并实现了登录认证,认证成功后返回该用户相应权限范围内可见的菜单。 后端采用SpringCloud构建微服,采用SpringCloud Gateway做为服务网关,采用Nacos做为统一配置中心,并在服务网关部分解决了前端跨域调

    2024年02月11日
    浏览(47)
  • Ruoyi若依前后端分离框架【若依登录详细过程】

    后端包含ruoyi-admin,ruoyi-common,ruoyi-framework等多个模块,ruoyi-admin为启动模块。先看一下ruoyi-admin/src/main/application.yml配置文件。 指定了服务端启动的端口8080。我们运行ruoyi-admin/src/main/java/com/ruoyi/ RuoYiApplication.java即可启动后端,监听8080端口。 我们回到前端的登录界面。 views

    2024年02月05日
    浏览(67)
  • 若依前后端分离项目docker部署

    1.centos 7 2.docker 3.mysql5.x 8.x 4.redis 5.nginx 前往 Gitee 下载页面(https://gitee.com/y_project/RuoYi-Vue (opens new window))下载解压到工作目录 3.1 后端 1.下载代码到本地后,解压完成,用idea打开项目 2.创建数据库:ry-vue 3.在创建好数据库后,运行以下两个sql文件生成数据表(quartz.sql、ry_202208

    2024年02月05日
    浏览(44)
  • 若依项目的介绍(前后端分离版本)

    目录 一、若依介绍 (一)简单介绍  (二)若依版本 (三)Git远程拉取步骤  二、项目的技术介绍 (一)后端技术 1.spring boot 2.Spring Security安全控制 3.MyBatis 4.MySQL和Redis (二)前端技术 1.vue 2.vue-router 3.axios  4.element-ui 5.node 6.ES6 7.Nginx反向代理服务器 三、项目结构介绍 1.总体

    2024年02月12日
    浏览(44)
  • 若依前端问题集合[前后端分离版本]

    目录 1.若依前后端分离页面改变title 1.修改icon 2.修改title文字 2.若依关闭Login页面验证码 1.关闭验证码 登录杂项 3.若依前端替换代理地址 4.侧边菜单和全局样式 1.侧边菜单 2.侧边栏顶部logo替换或删除 3.全局样式 修改背景色 修改浏览器title和icon图标 在项目 public 文件夹中有

    2024年02月07日
    浏览(51)
  • 【若依】框架:第01讲前后端分离项目

    介绍 | RuoYi         将下载好的若依项目导入IDEA,导入后配置MAVEN环境,等待下载完成。重点关注ruoyi-admin和ruoyi-system两个文件夹,前者放controller,后者放实体类、mapper、service ①打开文件夹选择若依前端项目(ruoyi-ui)文件夹 ②信任此作者进入 ③重点关心src文件夹下的api和

    2023年04月08日
    浏览(45)
  • 从零入门开源框架---若依(前后端分离版)

    一、若依是什么? 若依它就是一个开源项目,别人写好的代码,我们拿来进行二次开发,它主要是做数据和权限管理系统。 二、使用背景 任何公司的各种大的项目必然需要一个后台权限管理系统,这是必然的,但是如果不想投入太多人力物力去开发,又恰好有现成且比较好用

    2024年02月02日
    浏览(36)
  • 若依使用及源码解析(前后端分离版)

    部署环境 JDK = 1.8 MYSQL = 5.7 Maven = 3.0 Node = 12 Redis = 3 运行若依项目 下载若依源码  若依官网 若依项目源码(前后端分离) 运行后端项目  ruoyi-ui就是vue项目(这里使用vscode打开)   整体用idea打开 1.配置数据库(sql提供sql文件中的sql脚本配置) 创建数据库 ruoyi_vue数据库并导入qua

    2024年02月07日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包