首页 > 其他分享 >Spring Cloud服务之Nacos作为注册中心与配置中心

Spring Cloud服务之Nacos作为注册中心与配置中心

时间:2023-10-11 15:34:05浏览次数:37  
标签:Spring boot Nacos alibaba starter Cloud spring org cloud

1、创建maven父工程管理jar包版本

创建maven骨架,删除多余部分文件。只留pom文件,添加依赖

  <packaging>pom</packaging>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.2.RELEASE</version>
    </parent>


    <!--版本管理-->
    <properties>
        <spring.boot.version>2.3.2.RELEASE</spring.boot.version>
        <spring.cloud.version>Hoxton.SR9</spring.cloud.version>
        <spring.cloud.alibaba.version>2.2.6.RELEASE</spring.cloud.alibaba.version>
    </properties>

    <!--jar包管理-->
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.itmy</groupId>
                <artifactId>common-module</artifactId>
                <version>1.0-SNAPSHOT</version>
            </dependency>

            <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>

            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>1.1.16</version>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>8.0.26</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>2.1.3</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.83</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.16</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <!--maven打包插件-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

2、创建子工程模块

  <modules>
        <module>user-module</module>
        <module>order-module</module>
        <module>common-module</module>
        <module>gateway-module</module>
    </modules>

3、配置参数

创建好模块之后,下面就需要配置连接参数,这里依user-module子模块为例

添加maven依赖

 <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>com.itmy</groupId>
            <artifactId>common-module</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--Nacos Config-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <!--SpringBoot2.4.x的版本之后 使用bootstrap需要加包-->
<!--        <dependency>-->
<!--            <groupId>org.springframework.cloud</groupId>-->
<!--            <artifactId>spring-cloud-starter-bootstrap</artifactId>-->
<!--            <version>3.0.1</version>-->
<!--        </dependency>-->

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

创建资源文件bootstrap.yml文件

启动类加@EnableDiscoveryClient 注解,注册到注册中心

配置bootstrap.yml文件

server:
  port: 8801

spring:
  profiles:
    active: dev

  application:
    # 服务名称
    name: user-service-model

配置bootstrap-dev.yml文件

spring:
  cloud:
    nacos:
      # 服务注册
      discovery:
        server-addr: 127.0.0.1:8848
        # 分组
        group: dev
        # 注册到nacos上的服务名称,默认{${spring.application.name}
        service: ${spring.application.name}
        namespace: 23857f22-27ac-4947-988a-1b88d4eeb807
      # 读取nacos上的服务配置
      config:
        server-addr: 127.0.0.1:8848
        # 分组
        group: dev
        file-extension: yaml
        namespace: 23857f22-27ac-4947-988a-1b88d4eeb807
        # 共享配置
        shared-configs:
          - data-id: datasource.yaml
            group: dev
            refresh: true
          - data-id: mybatis.yaml
            group: dev
            refresh: true
        # 扩展配置
        extension-configs:
          - data-id: user-config-dev.yaml
            group: dev
            refresh: true

4、启动服务

5、登录Nacos查看注册中心

 

如上图,说明服务注册成功。

6、查看配置中心是否启用成功

登录Nacos创建配置文件

创建成功后,启动服务使用postman调用接口

数据获取成功

 

标签:Spring,boot,Nacos,alibaba,starter,Cloud,spring,org,cloud
From: https://www.cnblogs.com/eternality/p/17757310.html

相关文章

  • spring boot视频播放平台,播放视频很卡,有几种方案解决
    1.首先介绍场景:视频播放平台,系统使用Springboot和Vue编写。拥有前台和后台,前台进行视频播放,后台进行视频的上传,也可以上传音乐和图片,功能顺手都做了。2.问题:浏览器播放视频卡顿。视频卡顿问题需要攻克2关。3.解决过程1)第一关:视频文件太大,浏览器加载时间长。采用后端对......
  • SpringBoot一个小案例
    pojopublicclassUser{privateintuserid;publicUser(intuserid){this.userid=userid;}publicUser(){}publicintgetUserid(){returnuserid;}publicvoidsetUserid(intuserid){this.userid=userid;}}controller@Controller@......
  • Spring Cloud相关组件说明
    1、SpringCloud版本现有SpringCloud有两代实现,分为SpringCloudNetflix和SpringCloudAlibaba,由于SpringCloudNetflix版一些重要组件如注册中心Euraka、Ribbon已经不再迭代更新了,SpringCloudAlibaba慢慢孵化出SpringCloudAlibaba一套相关组件。2、SpringCloudNetflix......
  • springboot启动后异步启动一个程序
    如果你想在SpringBoot启动后异步方式启动一个方法,你可以使用SpringFramework的异步支持和 @Async 注解来实现。以下是如何在SpringBoot应用程序中异步方式启动一个方法的步骤:配置异步支持: 首先,在应用程序的主类上添加 @EnableAsync 注解,以启用异步支持importor......
  • SpringBoot的启动流程扩展点
    阅读说明:1.如果有排版格式问题,请移步https://www.yuque.com/mrhuang-ire4d/oufb8x/yo5ywqt5eudxvxfc?singleDoc#%20%E3%80%8ASpring%E5%8F%AF%E6%89%A9%E5%B1%95%E6%8E%A5%E5%8F%A3%E6%80%BB%E7%BB%93%E3%80%8B,选择宽屏模式效果更佳。2.本文为原创文章,转发请注明出处。SpringBoot......
  • Spring 源码分析(五)——Spring三级缓存的作用分别是什么?
    Spring的三级缓存是经典面试题,也会看到一些文章讲三级缓存与循环依赖之的关系。那么,三级缓存分别存储的什么呢?他们的作用又分别是什么?一、一、二级缓存一级缓存是一个名为singletonObjects的ConcurrentHashMap,用于存储已经创建完成的Bean。其作用也是最明显的,获取Bean时最优......
  • Redis的Java客户端——SpringDataRedis、RedisTemplate、StringRedisTemplate
     版权声明:本文为CSDN博主「我爱布朗熊」的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_51351637/article/details/127502799一、初步了解SpringDataRedisSpringData是Spring中数据操作的模块,包括对各种数据库的集......
  • SpringBootWeb登录认证 上
    案例-登录认证在前面的课程中,我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。这是不安全的,所以我们今天的主题就是登录认证。最终我们要实现的效果就是用户必须登录之后,才可以访问后台系统中的功能。1.登......
  • SpringBootWeb登录认证上中
    2.2.2.2方案二-Session前面介绍的时候,我们提到Session,它是服务器端会话跟踪技术,所以它是存储在服务器端的。而Session的底层其实就是基于我们刚才所介绍的Cookie来实现的。获取Session如果我们现在要基于Session来进行会话跟踪,浏览器在第一次请求服务器的时候,我们就可......
  • SpringBootWeb登录认证下
    2.5拦截器Interceptor学习完了过滤器Filter之后,接下来我们继续学习拦截器Interseptor。拦截器我们主要分为三个方面进行讲解:介绍下什么是拦截器,并通过快速入门程序上手拦截器拦截器的使用细节通过拦截器Interceptor完成登录校验功能我们先学习第一块内容:拦截器快速入门2.5.1快速......