springcloud 2021.0.3微服务框架搭建一:搭建项目目录

  • Post author:
  • Post category:其他

万恶之源

工作上一直用到spring cloud微服务框架,网上也看过一些博主的搭建过程,感叹自己眼高手低,想自己动手搭建一套属于自己的微服务框架,虽low但成就感满满。

spring cloud介绍

spring cloud的优点就是将单体应用细化成多个微服务,简化单体应用代码复杂度、维护成本等。微服务是一种架构风格,实现有很多,spring cloud就是其中一种。更多的优点可以百度一下~

spring cloud微服务项目搭建

最后的效果

本篇主要是实现使用IDEA从0到1搭建spring cloud微服务框架目录,最终实现的结果如下。
在这里插入图片描述

创建git仓库

在这里插入图片描述

克隆仓库

在这里插入图片描述

IDEA打开项目

远程仓库创建的项目不是maven项目,IDEA无法识别,可以首先在根项目下创建一个pom文件,并将当前根目录变更为maven模块。
具体操作:
(一)新加pom.xml
(二)选中项目,左上角点击File–>Project Structrue—>Modules—>import Module–>选择当前跟项目—>import Module from external module–>选择maven—>apply即可看到idea识别到该项目是一个maven项目了
在这里插入图片描述

在这里插入图片描述

添加父项目依赖

中所周知,spring cloud依赖于spring boot,需要在根项目添加spring boot starter的父版本信息,本教程使用2.7.7的spring boot starter parent版本和2021.0.3spring cloud版本


<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.7.7</version>
    <relativePath/>
</parent>

添加依赖管理

根项目的maven package类型是pom,主要用于工程管理,因此需要添加所有的依赖管理,由于是开篇,只添加spring cloud depencies即可

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>2021.0.3</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

创建子项目

待创建的子项目才是我们后续需要研发的服务,现在创建一个blog-service用于处理与博客有关的请求。具体的步骤为:

选中根项目,右键新建一个module—>选择maven项目—>选择父项目是我们的根项目即可

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

为子项目引入相关依赖

新建的blog-service用于处理博客相关请求,是一个web项目,因此需要引入spring-boot-starter-webspring-boot-starter两个依赖

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

创建项目主启动类

添加完依赖后,编写项目主启动类

package lucky.ml.blog;


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

@SpringBootApplication
public class BlogServerMainCls {

    public static void main(String[] args) {
        SpringApplication.run(BlogServerMainCls.class, args);
    }
}

创建配置文件

server:
  port: 8090

spring:
  application:
    name: blog-service

创建BlogController

创建BlogController用于处理blog请求,这里先写一个hello GET请求

package lucky.ml.blog.controller;


import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping(value = "/blogController")
public class BlogController {


    @GetMapping("/hello/{name}")
    public String sayHello(@PathVariable String name) {
        return "hello "+name;
    }
}

启动服务

在这里插入图片描述
浏览器输入:http://127.0.0.1:8090/blogController/hello/World!
在这里插入图片描述
如此,最基本的微服务项目目录搭建成功,下一篇介绍集成consul服务注册中心。


版权声明:本文为weixin_43808988原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。