SpringFramework、SpringBoot、SpringCloud的区别

SpringFramework、SpringBoot、SpringCloud的区别文章目录SpringSpringFrameworkSpringMVCSpringBootSpringCloud总结Spring是一个技术生态体系,是集大成者。它包含了SpringFramework、SpringBoot、SpringCloud等(还包括SpringClouddataflow、springdata、springintegration、springbatch、springsecurity、springhateoas),可以参考链接:https://spring.

大家好,又见面了,我是你们的朋友全栈君。

Spring

是一个技术生态体系,是集大成者。它包含了Spring Framework、Spring Boot、Spring Cloud等(还包括Spring Cloud data flow、spring data、spring integration、spring batch、spring security、spring hateoas),可以参考链接:https://spring.io/projects 下图为部分内容。


image-20200617171836329

Spring Framework

是一个一站式轻量级的java开发框架,核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层、业务层、持久层等都提供了多种配置解决方案。

是整个spring生态的基石,为依赖注入、事务管理、WEB应用、数据访问等提供了核心的支持。Spring Framework专注于企业级应用程序的“管道”,以便开发团队可以专注于应用程序的业务逻辑。

缺点:由于它自身并非容器,所以基本上不得不随JavaEE容器启动而装载,例如Tomcat、Jetty、JBoss等。

Spring MVC

是Spring Framework基础之上的一个WEB开发的MVC框架,MVC指的就是MVC设计模式,模型(Model)、视图(View)、控制器(Controller)。主要处理WEB开发的路径映射和视图渲染,XML、config等配置相对比较繁琐复杂。

Spring Boot

是Spring Framework的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务,为快速启动且最小化配置的spring应用而设计。

以前的Java Web开发模式:Tomcat + WAR包。WEB项目基于Spring Framework,项目目录一定要是标准的WEB-INF + classes + lib,大量的xml配置。

Spring Boot约定大于配置,集成了多个用于快速开发的Spring Framework插件,同时自动过滤不需要配置的多余的插件,简化了项目的开发配置流程,一定程度上取消xml配置。

Spring Cloud

是一整套基于Spring Boot的微服务解决方案。它为开发者提供了很多工具,用于快速构建分布式系统的一些通用模式,例如:配置管理、注册中心、服务发现、限流、网关、熔断、链路追踪等。

Spring Boot是build anything,而Spring Cloud是coordinate anything,它关注于全局的微服务整合和管理,将多个Spring Boot单体微服务进行整合以及管理。Spring Cloud完整组件参考链接:https://spring.io/projects/spring-cloud。


image-20200617180000124

总结

  • Spring 框架就像一个家族,有众多衍生产品例如 boot、security、jpa等等。但他们的基础都是Spring的ioc、aop等。 ioc 提供了依赖注入的容器, aop解决了面向横切面编程,然后在此两者的基础上实现了其他延伸产品的高级功能。

  • Spring MVC是基于Servlet 的一个MVC框架主要解决WEB开发的问题,因为Spring Framework的配置非常复杂,各种XML、JavaConfig、servlet处理起来比较繁琐。

  • 为了简化开发者的使用,从而创造性地推出了Spring Boot框架,默认优于配置,简化了Spring MVC的配置流程;但区别于Spring MVC的是,Spring Boot专注于微服务方面的接口开发,和前端解耦。

  • Spring Cloud框架和Spring Boot一样,注重的是微服务的开发,但是Spring Cloud更关注的是全局微服务的整合和管理,相当于管理多个Spring Boot框架的单体微服务。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137854.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • css边框渐变色和圆角_css边框颜色渐变

    css边框渐变色和圆角_css边框颜色渐变一个DIV实现圆角边框渐变<divclass=”box”></div>.box{width:713rpx;height:80rpx;border-radius:100rpx;border:5rpxsolidtransparent;background-origin:border-box;background:linear-gradient(0deg,#E24556,#E82148,#F35F77

    2022年10月27日
  • intellij idea和eclipse比较_eclipse与idea的区别

    intellij idea和eclipse比较_eclipse与idea的区别             【总结】IDEA和Eclipse的比较    两个开发编辑器,可以说Eclispe之前占据了上风,但近几年来IDEA的使用率猛扑直追,现在IDEA有着反超的气势,到底两者之间有什么相似之处,又有什么区别呢?我们来看一下~~。   一、快捷键比较快捷键 Eclipse IDEA 查找类名 CTRL+…

  • char转换成string java_int类型转换成char类型

    char转换成string java_int类型转换成char类型类型转换:char转int源码packagecom.onlydemo.javalang;/***类型转换:char转int**1.char-‘0’将char转int*2.Character.getNumericValue(charch)将char转int**@authorwww.only-demo.com**/classCha…

  • python分组聚合_python爬虫标签

    python分组聚合_python爬虫标签由于某些原因,回归和分类问题总会引起机器学习领域的大部分关注。多标签分类在数据科学中是一个比较令人头疼的问题。在这篇文章中,我将给你一个直观的解释,说明什么是多标签分类,以及如何解决这个问题。1.多标签分类是什么?让我们来看看下面的图片。如果我问你这幅图中有一栋房子,你会怎样回答?选项为“Yes”或“No”。或者这样问,所有的东西(或标签)与这幅图有什么关系?在这些类型的问题中,我们有一组目标变…

    2022年10月26日
  • windows常用命令行命令

    windows常用命令行命令

    2021年10月20日
  • 概率矩阵分解模型 PMF[通俗易懂]

    概率矩阵分解模型 PMF[通俗易懂]本文是论文《一种结合推荐对象间关联关系的社会化推荐算法》的笔记(上)。因为对其中的概率矩阵分解(ProbabilisticMatrixFactorization,PMF)不够了解,因而我先去脑补了PMF在推荐系统中的应用,然后再对论文进行总结。主要内容包括svd的两种形式和PMF的介绍。

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号