springboot 与spring的区别_SpringBootVFS

springboot 与spring的区别_SpringBootVFS一、概念1、SpringSpring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。2、SpringMVCSpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。SpringMVC是一种web层mvc框架,用于替代servlet(处理|响应请求,获取表单参数,表单校

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、概念

1、Spring

Spring是一个开源容器框架,可以接管web层,业务层,dao层,持久层的组件,并且可以配置各种bean,和维护bean与bean之间的关系。其核心就是控制反转(IOC),和面向切面(AOP),简单的说就是一个分层的轻量级开源框架。

2、SpringMVC

Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。SpringMVC是一种web层mvc框架,用于替代servlet(处理|响应请求,获取表单参数,表单校验等。SpringMVC是一个MVC的开源框架,SpringMVC=struts2+spring,springMVC就相当于是Struts2加上Spring的整合。

3、SpringBoot

Springboot是一个微服务框架,延续了spring框架的核心思想IOC和AOP,简化了应用的开发和部署。Spring Boot是为了简化Spring应用的创建、运行、调试、部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置。提供了一堆依赖打包,并已经按照使用习惯解决了依赖问题—>习惯大于约定。

二、原理和结构

1、Spring的原理和组成

Spring为简化我们的开发工作,封装了一系列的开箱即用的组件功能模块,包括:Spring JDBC 、Spring MVC 、Spring Security、 Spring AOP 、Spring ORM 、Spring Test等。如下图:
在这里插入图片描述
简化的理解图:
在这里插入图片描述
2、SpringMVC的原理和组成

从上图中可以看出:SpringMVC是属于SpringWeb里面的一个功能模块(SpringWebMVC)。专门用来开发SpringWeb项目的一种MVC模式的技术框架实现。
其原理如下:
在这里插入图片描述
MVC:Model(模型)、VIew(视图)、Controller(控制器);我们从开始接触并学习javaWeb开发就知道MVC这一种架构,如早起的Sturts1、Sturts2等。

3、SpringBoot的原理和特性

Spring Boot基本上是Spring框架的扩展,它消除了设置Spring应用程序所需的XML配置,为更快,更高效的开发生态系统铺平了道路。

Spring Boot中的一些特点:

  1. 创建独立的spring应用。
  2. 嵌入Tomcat, JettyUndertow 而且不需要部署他们。
  3. 提供的“starters” poms来简化Maven配置。
  4. 尽可能自动配置spring应用。
  5. 提供生产指标,健壮检查和外部化配置。
  6. 绝对没有代码生成和XML配置要求。

组成和结构如下图:
在这里插入图片描述
从图中可以看出SpringBoot是包含了Spring的核心(IOC)和(AOP);以及封装了一些扩展,如Stater:
在这里插入图片描述

三、区别与总结

1.简单理解为:Spring包含了SpringMVC,而SpringBoot又包含了Spring或者说是在Spring的基础上做得一个扩展。

在这里插入图片描述
2、关系大概就是这样:

spring mvc < spring < springboot

3、Spring Boot 对比Spring的一些优点包括:

  1. 提供嵌入式容器支持
  2. 使用命令java -jar独立运行jar
  3. 在外部容器中部署时,可以选择排除依赖关系以避免潜在的jar冲突
  4. 部署时灵活指定配置文件的选项
  5. 用于集成测试的随机端口生成

4、结论

Spring Boot只是Spring本身的扩展,使开发,测试和部署更加方便。

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171220.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java中输出数组元素的方法[通俗易懂]

    java中输出数组元素的方法[通俗易懂]定义一个数组:int[]array=newint{5,2,3,8};方法一:for(inti=0;i<array.length){ System.out.println(array[i]);}方法二:importjava.util.Arrays;System.out.println(Array.toString(array))方法三:…

    2022年10月11日
    2
  • JAVA和C++区别

    JAVA和C++区别 JAVA和C++都是面向对象语言。也就是说,它们都能够实现面向对象思想(封装,继乘,多态)。而由于c++为了照顾大量的C语言使用者,而兼容了C,使得自身仅仅成为了带类的C语言,多多少少影响了其面向对象的彻底性!JAVA则是完全的面向对象语言,它句法更清晰,规模更小,更易学。它是在对多种程序设计语言进行了深入细致研究的基础上,据弃了其他语言的不足之处,从根本上解决了c++的固有缺陷。Java和

    2022年7月7日
    17
  • VeryCD转型的应对措施,让我们继续分享互联网!!!

    VeryCD转型的应对措施,让我们继续分享互联网!!!
    昨天在家里,看着电影听着歌,忽然VeryCD就被和谐了!有电驴的日子才是好日子啊!我还想下【告白】呢!我还想下【大地惊雷】呢!……
    已经有不少同学注意到了,VeryCD的音乐区被和谐了,电影区和剧集区也不提供下载链接了,俨然变成一个在线视频网站。那么高清电影、剧集,音乐专辑、电影原声就此离我们远去了?不!
    VeryCD怂掉也是迟早的事儿,它在中国光明正大的推广盗版如此之久已经是一个奇迹了,但VC倒了并不会影响我们下载emule资源。简单来说VeryCD是一个商业公司,

    2022年7月15日
    18
  • 树莓派能做什么呢?如何使用树莓派

    树莓派能做什么呢?如何使用树莓派我们知道树莓派是最常用的开发板,树莓派受欢迎的原因之一在于树莓派的功能非常全面,不论是做视频播放、音频播放等功能,树莓派都能派上用场。为增进大家对树莓派的认识,本文将带大家了解一下曾有人用树莓派做了什么。如果你对树莓派具有兴趣,不妨继续往下阅读哦。1、无线热点这大概是地球人拿来干的最多的一件——插上网线和USB无线网卡,配置之后就可以作为一个无线热点。2、机械假肢MITMediaLab的研究员把它作为机械假肢的控制器。3、简易自制笔记本把树莓派跟LCD液晶面板连上,再加上鼠标键盘

    2022年6月9日
    30
  • 飞猪双11挑战_天猫双十一晚会极限挑战

    飞猪双11挑战_天猫双十一晚会极限挑战摘要: EagleEye作为阿里集团老牌的链路跟踪系统,其自身业务虽不在交易链路上,但却监控着全集团的链路状态,特别是在中间件的远程调用上,覆盖了集团绝大部分的场景,在问题排查和定位上发挥着巨大的作用,保障了各个系统的稳定性,为整个技术团队打赢这场战役保驾护航。作者:王华锋(水彧)背景双十一一直是阿里巴巴集团每年要打的一场大战役。要打赢这场战役,技术上,不仅仅是几个应用

    2022年8月16日
    5
  • socket使用方法_socket调试工具怎么用

    socket使用方法_socket调试工具怎么用socketpair函数概要如下:#include#includeintsocketpair(intdomain,inttype,intprotocol,intsv[2]);sys/types.h文件需要用来定义一些C宏常量。sys/socket.h文件必须包含进来定义socketpair函数原型。socketpair函数需要四个参数。他们是:套接口的域

    2022年10月14日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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