当前位置: 首页 > news >正文

七天学会SpringCloud分布式微服务——02——第一个微服务项目

1、建立springboot项目

在这里插入图片描述

  • 这里springboot版本号随便选,其他都不要选,后面重现选springboot版本号
    在这里插入图片描述

2、修改spring-cloud的pom.xml文件

2.1 去掉无关内容

<url/><licenses><license/></licenses><developers><developer/></developers><scm><connection/><developerConnection/><tag/><url/></scm>

2.2 标明为父工程

增加

 <packaging>pom</packaging>

2.3 springboot版本 3.2.0 + springcloud2023.0.3+springcloudalibaba2023.0.1.3

属性properties改为:

<properties><java.version>17</java.version><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.1.3</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>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>

完整的父工程pom.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.2.0</version><relativePath/> <!-- lookup parent from repository --></parent><packaging>pom</packaging><!--这一部分改为自己的--><groupId>com.zhenbang</groupId><artifactId>spring-cloud</artifactId><version>0.0.1-SNAPSHOT</version><name>spring-cloud</name><description>spring-cloud</description><properties><java.version>17</java.version><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.1.3</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><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

最终是这样的,删除无关文件
在这里插入图片描述

3、在spring-cloud项目中新建一个services模块

   <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.2.0</version><relativePath/> <!-- lookup parent from repository --></parent>

普通java就可以,不用选springboot,因为父工程已经已经是springboot项目了,子工程也是了,根本原因就是上面这段!!!
在这里插入图片描述

4、在services模块下的pom文件也要加上,因为它也不写具体代码

<packaging>pom</packaging>

可以删除services下的src

5 、在services模块下创建真正的具体微服务模块

在这里插入图片描述
在service-product这个具体微服务模块下的pom文件下引入真正的依赖包

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

6、修改service-product的微服务主函数

package com.zhenbang;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class ProductMainApplication {public static void main(String[] args) {SpringApplication.run(ProductMainApplication.class,args);}
}

7、配置yam文件

先在services pom文件下引入依赖

   <dependencies><!-- Nacos服务发现 --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency></dependencies>
spring:application:name: service-productcloud:nacos:server-addr: 127.0.0.1:8848server:port: 9000

前提是安装Nacos,本地运行起来!!!

http://www.xdnf.cn/news/1069615.html

相关文章:

  • Flink Oracle CDC 总结
  • 六个安全Agent设计模式:有效防止Prompt注入攻击
  • Milvus 资源调度系统的核心部分:「查询节点」「资源组」「数据库」
  • 黑马ReactDay02
  • gitlab https链接转为ssh链接
  • Android 开发 获取Debug 跟 Release 包的SHA1值
  • Host ‘db01‘ is not allowed to connect to this MariaDB server 怎么解决?
  • 原子级制造革命:双原子镧催化剂登顶Angew,焦耳超快加热技术深度解析
  • 卷积神经网络(Convolutional Neural Network, CNN)
  • 论文阅读:A Survey on Large Language Models for Code Generation
  • 量学云讲堂王岩江宇龙2025年第58期视频 主课正课系统课+收评
  • 八股文——JAVA基础:说一下C++与java的区别
  • 【笔记】Docker 配置阿里云镜像加速(公共地址即开即用,无需手动创建实例)
  • 使用pyflink编写demo并将任务提交到yarn集群
  • python的智慧养老院管理系统
  • 20250625解决在Ubuntu20.04.6LTS下编译RK3588的Android14出现cfg80211.ko的overriding问题
  • GBDT:梯度提升决策树——集成学习中的预测利器
  • 自动化测试--Appium和ADB及常用指令
  • python学习笔记(深度学习)
  • 深入浅出:RocketMQ与Kafka的双剑合璧,实现高可用与高吞吐
  • Fisco Bcos学习 - 搭建第一个区块链网络
  • 《从0到1:C/C++音视频开发自学完全指南》
  • 达梦数据库安装
  • 没有VISA怎么注册AWS?
  • WinAppDriver 自动化测试:Python篇
  • 【基础篇-消息队列】——如何通过网络传输结构化的数据( 序列化与反序列化)
  • MySQL之存储过程详解
  • 《汇编语言:基于X86处理器》第4章 复习题和练习,编程练习
  • 定位坐标系深度研究报告
  • 【Docker基础】Docker容器管理:docker pause、stop、kill区别