【03】微服务系列 之Nacos 注册中心(服务注册)

微服务系列 之Nacos 注册中心(服务注册)

  • 前言
  • [父工程 pom.xml 文件更新](#父工程 pom.xml 文件更新)
  • 服务注册
    • [service-machine 服务模块](#service-machine 服务模块)
      • [pom.xml 文件更新](#pom.xml 文件更新)
      • [application.properties 配置文件](#application.properties 配置文件)
      • 启动类
    • [service-instance 服务模块](#service-instance 服务模块)
  • 验证

前言

本工程在《微服务系列 之 初始化工程》基础上,进行持续开发。

父工程 pom.xml 文件更新

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 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <!-- 引入 SpringBoot 版本 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.2.4</version>
        <relativePath/>
        <!--   lookup parent from repository   -->
    </parent>

    <modelVersion>4.0.0</modelVersion>

    <groupId>com.junjiu.microservices</groupId>
    <artifactId>microservices-demo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!-- 聚合工程. -->
    <packaging>pom</packaging>

    <properties>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring-cloud.version>2023.0.1</spring-cloud.version>
        <spring-cloud-alibaba.version>2023.0.1.0</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>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.fastjson2</groupId>
            <artifactId>fastjson2</artifactId>
            <version>2.0.51</version>
        </dependency>
    </dependencies>
</project>

服务注册

service-machine 服务模块

代码更新后的项目结构如下:

pom.xml 文件更新

pom.xml 文件新增以下坐标:

xml 复制代码
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

application.properties 配置文件

resources 配置文件夹中,新建 application.properties 文件,添加以下配置:

java 复制代码
# 服务器端口.
server.port=5826
# 应用服务名称.
spring.application.name=service-machine
# Nacos 服务地址.
spring.cloud.nacos.server-addr=192.168.88.166:8848

启动类

删除原来的 Main 启动类,添加 MachineApplication.java 类,完善代码如下:

java 复制代码
package com.junjiu.microservices;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * program: microservices-demo
 * ClassName: MachineApplication
 * description:
 *
 * @author: 君九
 * @create: 2026-01-30 21:04
 * @version: 1.0
 **/
@SpringBootApplication
public class MachineApplication {
    public static void main(String[] args) {
        SpringApplication.run(MachineApplication.class, args);
    }
}

service-instance 服务模块

实例管理模块代码更新项和 service-machine 服务模块 的内容一样,此处不再重复撰写。

验证

service-machineservice-instance 两个服务模块代码完善后,分别启动模块工程。

打开 Nacos 服务平台,可看到服务已经注册上来了。

若有转载,请标明出处:https://blog.csdn.net/CharlesYuangc/article/details/157517435

相关推荐
_olone1 分钟前
牛客每日一题:显生之宙(Java)
java·开发语言·算法·牛客
Sirens.4 分钟前
Java 包装类、泛型与类型擦除
java·开发语言·javac
飞飞的AI实验室4 分钟前
深度解析:Claude Code 和 OpenClaw 底层架构的设计取舍
架构·ai编程·ai agent·claude code·openclaw
小光学长19 分钟前
基于ssm的膳食健康管理系统e6whl4q7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·开发语言·数据库·学习·ssm
java1234_小锋20 分钟前
Java高频面试题:Redis到底支不支持事务啊?
java·redis·面试
无心水23 分钟前
【常见错误】2、Java并发编程避坑指南:从加锁失效到死锁,10个案例教你正确使用锁
java·开发语言·python
百结21424 分钟前
LNMP网站架构与部署
架构
我爱学习好爱好爱24 分钟前
Kubernetes 1.29集群上部署Java网站项目
java·容器·kubernetes
青衫码上行24 分钟前
【项目开发日记 | Java架构】第一天
java·开发语言·spring cloud
枕布响丸辣30 分钟前
LNMP 网站架构与部署全攻略:从零基础到上线运行
架构