1. 问题描述
随着springboot、springcloud的不断迭代升级,开发效率不断提升,越来越多的开发团队加入到spring的大军中,今天用通俗的语言,介绍下什么是springboot,springcloud以及它们之间的关系。

2. 方案
2.1 首先说下maven
关于maven不想多说了,maven主要有两个功能,一是通过gav定位获取jar包,一是编译打包。

gav示例

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.40</version>
        </dependency>

2.2 springboot介绍
2.2.1 介绍
其实springboot就是一个maven项目,只不过使用了spring提供的多个starter来加载多个相关依赖包,starter简单说就是maven包的组合。

比如:只需要一个web的starter包就能直接启动web服务了( springboot项目快速搭建)

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.0.3.RELEASE</version>
        </dependency>

2.2.2 依赖图

如下图,一个starter包集合了N个包。

2.3 springcould介绍

2.3.1 新建springcloud项目

新建springboot项目,选择Eureka server就可以新建eureka注册中心了。

2.3.2 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 http://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>2.1.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.spc</groupId>
    <artifactId>eurekaserver</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>eurekaserver</name>
    <description>Demo project for Spring Boot</description>

<properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
    </properties>

<dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>

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

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

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

2.3.3 依赖图

”spring-cloud-netflix-eureka-server“包中已经包含:”spring-boot-starter-web“,图太了,就不截图了。

2.4 关系总结
通过上面的描述可以总结出:

(1) maven是springboot的基础,springboot项目本身就是maven项目。在maven项目中使用springboot的多个starter加几个约定,就能成为springboot项目了。

(2)springboot是springcloud的基础,springcloud本身是springboot项目。

(3)关系:maven->springboot->springcloud

maven是springboot的基础,springboot是springcloud的基础,maven不依赖于springboot,springboot不依赖与springcloud。

springboot与springcloud的关系(转载)相关推荐

  1. SpringBoot与SpringCloud的关系与区别

    一.SpringBoot和SpringCloud简介 1.SpringBoot:是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们快速整合第三方常用框架,完全采用注解化(使用注解方式启动Sp ...

  2. Spring、SpringMVC、SpringBoot、SpringCloud的关系分享

    最近在做一些技术架构原型,发现Spring已经跟三四年前发生了很多的区别,技术的迭代日新月异,再不学习就赶不上时代的脚步 ,以下是最近关于Spring.SpringMVC.SpringBoot.Spr ...

  3. 从零开始搭建spring-cloud(0) --springboot与springcloud的关系

    撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> Spring Cloud provides tools for developers to quickly bu ...

  4. Spring、SpringMVC、SpringBoot、SpringCloud的联系和区别

    一. 上一篇文章刚刚简单介绍了spring框架,下面我将介绍一下Spring,SpringMVC,SpringBoot,SpringCloud的联系和区别. 首先先简单介绍一下各个框架. Spring ...

  5. spring、springMvc、springBoot和springCloud的联系与区别

    作者:尘光掠影  来源:CSDN  原文:https://blog.csdn.net/alan_liuyue/article/details/80656687  spring和springMvc: 1 ...

  6. 史上最详细 最官方的 SpringBoot和SpringCloud的版本选择!!!! 绝对让你心服口服的版本选择方式!!!

    一.Springboot版本选择 1.1.git源码地址 SpringBoot 1.2.SpringBoot2.0新特性 https://github.com/spring-projects/spri ...

  7. 一篇文章让你轻松搞定SpringBoot和SpringCloud之间的版本选择!!!

    首先说明一下我认为我没有乱立标题或者是夸大标题,这篇文章肯定能告诉你该如何选择SpringBoot和SpringCloudd之间的版本,资料也是从官网拿的,并非胡乱捏造. 学的越来越多,基础不牢固,每 ...

  8. 再见,Springboot和SpringCloud

    Java中说到微服务肯定离不开Spring Boot和Spring Cloud,这两者到底有什么关系,什么是微服务,如果单纯的说SpringBoot,SpringCloud,都是不准确的,那应该怎么回 ...

  9. SpringBoot与SpringCloud的版本对应详细版

    作者:梦幻朵颜 出处:https://www.cnblogs.com/zhuwenjoyce/你的一个点赞,一句留言,都将是博主的前进动力!!! 版权:本文版权归作者和博客园共有,欢迎转载,但未经作者 ...

最新文章

  1. 大约 Apple Metal API 一些想法
  2. ESP8266的一个小问题
  3. java广告无限点击_什么是互联网广告,互联网广告的投放形式都有哪些?
  4. .NET Core微服务之基于Ocelot实现API网关服务
  5. php狼和兔子算法,PHP基于递归算法解决兔子生兔子问题php技巧
  6. activity多实例任务减签
  7. ESP8266--接线与基础指令(讲解与运用)
  8. sql server2016数据库学习必备(保姆级教程)
  9. 多维特征输入,多层神经网络学习
  10. 云南省增值税发票综合平台(修订版)----发票抵扣勾选教程---
  11. 干货分享:Google搜索如何限制在具体的一个州或城市
  12. java获取视频封面图片
  13. 从成功到夺目: Google Play 2021 年度中国开发者最佳榜单
  14. 3-基于51单片机的篮球计分器
  15. Xilinx IDELAYCTRL
  16. 支持Apple pay支付的设备
  17. 面试准备(常见问题)
  18. 如何使用域组策略(AD GPO)分发软件安装以及卸载
  19. gun/linux more 搜索功能
  20. linux查看自动周期性任务,Linux自学笔记——Linux周期性计划任务

热门文章

  1. RMAN-06026报错解决方法
  2. MA5680T OLT管理软件,全智能判断板卡,无人值守策略,根据光猫类型自动扫描添加光猫...
  3. Ubuntu 14.04 安装Visual studio Code
  4. php运算符的特殊用法
  5. 调用百度报Cannot read property ‘lng‘ of null错误
  6. 红帽linux cd命令,redhat linux 文件操作
  7. mysql 经验_mysql经验
  8. docker选择安装位置_监控摄像机的安装位置选择和焦距选择
  9. postman安装路径_OpenStack Swift 安装及使用
  10. HQuery中html结构及文本的修改