【微服务学习一】springboot微服务项目构建以及nacos服务注册

参考链接

3. SpringCloud - 快速通关

springboot微服务项目构建

教程中使用的springboot版本是3.x,因此需要使用jdk17,并且idea也需要高版本,我这里使用的是IDEA2024。

环境准备好后我们就可以创建springboot项目,最外层的项目是用来进行依赖管理的,可以删除多余的文件,只保留下图的文件即可

修改pom.xml配置文件如下

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <packaging>pom</packaging>
    <groupId>com.example</groupId>
    <artifactId>cloud-demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>cloud-demo</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring-cloud.version>2023.0.3</spring-cloud.version>
        <spring-cloud-alibaba.version>2023.0.3.2</spring-cloud-alibaba.version>
    </properties>
    
    <dependencyManagement>
        <dependencies>
            <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>
        </dependencies>
    </dependencyManagement>

</project>

父项目构建好后,我们需要继续构建子项目

我们需要构建一个java模块叫做services,构建好后只保留pom.xml,并且在其中添加一句packaging的配置

接着在services下面创建两个微服务,分别是serivce-product和service-order

创建完成后maven的目录结构如下

接着我们在services中的pom.xml配置文件中导入公共依赖

至此,项目结构就创建好了

开启nacos服务并进行服务注册

我们可以在教程中下载nacos服务端

下载并解压完成后cmd进入到bin目录,执行命令即可开启nacos服务

接着我们让两个微服务对nacos进行注册,需要进行如下操作

首先给微服务添加web依赖

然后编写启动类

最后编写配置文件

接着启动应用就可以在nacos的控制页面中看到我们注册的服务

为了模拟集群模式,我们还可以启动多个微服务,首先选择复制配置

然后我们添加配置,采用不同端口进行启动

启动之后可以看到service-order服务实例数变为2了

如此一来就大功告成啦,[]~( ̄▽ ̄)~*

相关推荐
知识分享小能手38 分钟前
R语言入门学习教程,从入门到精通,R语言数据计算与分组统计(9)
开发语言·学习·r语言
lizhihai_991 小时前
股市学习心得—半导体12种核心材料
大数据·人工智能·学习
sakiko_1 小时前
UIKit学习笔记3-布局、滚动视图、隐藏或显示视图
前端·笔记·学习·objective-c·swift·uikit
小编码上说1 小时前
LSH(局部敏感哈希)分桶,海量数据下的相似性搜索解决方案
java·spring boot·缓存·langchain4j·lsh·局部敏感哈希·ai调用优化
计算机_毕业设计2 小时前
java-springboot数字藏品系统 基于 SpringBoot 的区块链数字艺术品交易平台 Java 微服务架构下的加密藏品展示与拍卖系统计算机毕业设计
java·spring boot·课程设计
中冕—霍格沃兹软件开发测试2 小时前
区块链交易最终一致性测试的核心挑战与实践框架
微服务·架构·单元测试·区块链·集成测试·旅游
嵌入式-老费2 小时前
瑞芯微soc的学习和应用(题外话之esp32开发)
学习
dovens2 小时前
SpringBoot集成MQTT客户端
java·spring boot·后端
❀͜͡傀儡师3 小时前
Spring Boot 集成 RocksDB 实战:打造高性能 KV 存储加速层
java·spring boot·后端·rocksdb
辰同学ovo3 小时前
从全局登录状态管理学习 Redux
前端·javascript·学习·react.js