微服务开发环境搭建

一、SpringCloud版本

SpringCloud在2020.0.0版本之前,按照伦敦地铁站名称从A-Z来进行版本命名,自2020.0.0-M1开始,SpringCloud废除了这种命名方式,使用了日历化版本命名。

SpringCloud日历化命名规则: YYYY.MINOR.MICRO

  • YYYY:表示4位年份
  • MINOR:表示一个递增的数字,每年从-开始依次递增
  • MICRO:表示版本号后缀

SpringCloud版本选择

  • SpringCloud Hoxton.SR9
  • SpringBoot 2.3.5.RELEASE
  • SpringCloud Alibaba 2.2.1.RELEASE
  • Java8

二、项目搭建

  1. 创建父工程

  2. 引入pom依赖

      <?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">
          <modelVersion>4.0.0</modelVersion>
      
          <groupId>org.example</groupId>
          <artifactId>project-cloud</artifactId>
          <version>1.0-SNAPSHOT</version>
      
      
          <!-- 打包方式,jar,war,pom表示这个项目不是一个完整的有代码的项目,而是一个只有pom文件的项目,来充当父项目 -->
          <packaging>pom</packaging>
          <description>统一依赖版本</description>
      
          <properties>
              <java.version>1.8</java.version>
              <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
              <maven.compiler.source>1.8</maven.compiler.source>
              <maven.compiler.target>1.8</maven.compiler.target>
              <!-- 版本号 -->
              <spring.cloud-version>Hoxton.SR9</spring.cloud-version>
              <spring.boot-version>2.3.5.RELEASE</spring.boot-version>
              <spring.cloud.alibaba-version>2.2.1.RELEASE</spring.cloud.alibaba-version>
          </properties>
      
          <dependencyManagement>
              <dependencies>
                  <dependency>
                      <groupId>org.springframework.boot</groupId>
                      <artifactId>spring-boot-dependencies</artifactId>
                      <version>${spring.boot-version}</version>
                      <!-- 指定该依赖不是一个jar包依赖,而是一个pom文件。这个pom文件里面又包含了很多的依赖。 -->
                      <type>pom</type>
                      <!--把该依赖的pom文件里面的所有依赖导入到我当前项目中-->
                      <scope>import</scope>
                  </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>
      
      
              </dependencies>
          </dependencyManagement>
          <!--父项目中引入依赖,所有子项目可以使用该依赖-->
          <dependencies>
              <dependency>
                  <groupId>org.projectlombok</groupId>
                  <artifactId>lombok</artifactId>
                  <optional>true</optional>
              </dependency>
          </dependencies>
      
      </project>
    

    pom.xml文件中dependencyManagement和dependencies的区别

    • dependencyManagement:指定依赖版本号,子项目想用这个依赖需要手动导入,但是导入时不需要定义版本号
    • dependencies:指定依赖的jar包,子项目不用重新依赖,就可以默认使用该依赖
  3. 设置跳过单元测试
    在这里插入图片描述

  4. 商品服务&订单服务创建

    1. 创建module
      在这里插入图片描述

      这个module会继承父项目

    在这里插入图片描述

    2.  引入spring-boot-starter-web依赖
    
		<dependencies>
             <dependency>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-starter-web</artifactId>
             </dependency>
         </dependencies>
  1. 创建入口类

      @SpringBootApplication
      public class ProductApplication {
      
          public static void main(String[] args) {
      
              SpringApplication.run(ProductApplication.class,args);
      
          }
      }
    
  2. 创建测试Controller

       @RestController()
       public class ProductController {
       
           @GetMapping("/product")
           public String getProduct(){
               return "商品服务测试...";
           }
       
       
       }
    
  3. 设置application配置文件

      # 应用名称
      spring.application.name= coding-product
      # 应用路径
      server.servlet.context-path= /coding-product
      # 端口号
      server.port=8080
    
  4. 启动项目访问
    在这里插入图片描述

  5. 同样的方式创建订单服务coding-order

  6. 配置Run Dashboard
    在这里插入图片描述
    在这里插入图片描述

    选中SpringBoot

    在这里插入图片描述
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘程云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值