一、概念

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, Jetty Undertow 而且不需要部署他们。
  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的一些优点包括

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

4、结论

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

觉得对你有帮助,关注博客和公众号。不定期分享最新前沿技术框架和bat大厂常用技术等,加群不定期分享行业内大牛直播讲课以及获得视频课件资料等。

aop springboot 传入参数_Spring、SpringMVC和SpringBoot看这一篇就够了!相关推荐

  1. aop springboot 传入参数_java相关:springboot配置aop切面日志打印过程解析

    java相关:springboot配置aop切面日志打印过程解析 发布于 2020-3-31| 复制链接 摘记: 这篇文章主要介绍了springboot配置aop切面日志打印过程解析,文中通过示例代码 ...

  2. 台达b2伺服说明书_三菱Q系列定位模块及伺服参数不会设置?看这一篇就够了!...

    三菱Q系列定位模块介绍及应用 --定位模块及伺服参数设置 一.定位模块QD75D2参数设定(基本参数) 1. 单位设置 3(脉冲) 2. 每转的脉冲数 2000 3. 脉冲输出模式 1(CW/CCW) ...

  3. ln函数怎么看奇偶性_Python中函数的参数应该怎么理解?看完这篇文章情不自禁的想收藏...

    前面给大家讲过,函数是一种编程思想,是提高代码重复利用的设计思路,是代码设计更深层次的产物.今天要给大家讲的就是函数的核心:函数的参数 基本概念 1.函数的参数:是指函数完成某项功能所需要的信息. 举 ...

  4. springMVC最全笔记,一篇就够

    三.SpringMVC 目录 三.SpringMVC 1.SpringMVC简介 1.1.什么是MVC 1.2.什么是SpringMVC 1.3.SpringMVC的特点 2.入门案例 2.1.开发环 ...

  5. aop springboot 传入参数_Springboot添加AOP打印请求参数

    1. 引入依赖 org.springframework.boot spring-boot-starter-aop 2. 写切面 切面类需要加@Aspect和@Component注解 package c ...

  6. aop springboot 传入参数_springboot用aop做参数校验

    /** * Created by 12274 on 2018/8/29. * 实现类所有方法入参校验 */ @Aspect @Component @Slf4j public class AopServ ...

  7. SpringBoot写后端接口,看这一篇就够了!

    摘要:本文演示如何构建起一个优秀的后端接口体系,体系构建好了自然就有了规范,同时再构建新的后端接口也会十分轻松. 一个后端接口大致分为四个部分组成:接口地址(url).接口请求方式(get.post等 ...

  8. aop切面排除某个类_AOP 你看这一篇就够了

    网上很多人在介绍AOP时都这样说:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.个人认为这句话是错误.AOP和OOP一样,是一种程序设计思想,而非技术手段. 程序设计有 ...

  9. SpringMVC快速入门,看这一篇就够了!

    springmvc概述 Springmvc是spring框架的一个模块,spring和springmvc无需中间整合层整合. Springmvc是一个基于mvc的web框架 表现层的三大任务: URL ...

最新文章

  1. java gc回收区域_java内存区域以及GC回收
  2. 显示控制器注释_欧姆龙可编程控制器CS1D-CPU产品型号说明及功能介绍
  3. WordPress二次开发经验简短总结
  4. java五子棋判断_JAVA 五子棋 判断输赢的代码实现
  5. 【MySQL通过视图(或临时表)实现动态SQL(游标】
  6. jsp中接收java的返回值_jsp中request的一些方法返回值
  7. Java线程池 与Lambda
  8. apache camel file(二)
  9. 传智播客 机器学习基础 学习笔记
  10. aut0cad2010卸载工具_autocad2010官方版
  11. HP笔记本430 G3 ubuntu系统无线网卡驱动安装
  12. 计算机怎样更新卡驱动,显卡驱动怎么升级
  13. windows2003下如何关闭默认共享
  14. 化工原理 --- 流体流动 2
  15. 信息系统项目管理9大知识领域及其概要说明
  16. 《淘宝网店》:计算总收益
  17. macOS 内核之 OS X 系统的起源
  18. TBR架构的一些理解
  19. 按钮在IE中两边被拉伸的 BUG
  20. 深拷贝deepClone

热门文章

  1. c语言图形界代码,求个用最简单的的代码来实现图形界面…
  2. 【示例】C语言中利用数组存放函数指针
  3. python(numpy,pandas5)——numpy中copy 和 deep copy
  4. 强化学习5——价值函数近似(VFA)
  5. 捕获计算机屏幕++方法,如何在Windows 10计算机上录制屏幕以及如何捕获计算机的音频...
  6. mysql 上级组织参数值_MySQL参数group_replication_consistency说明
  7. python six库_six库 解决python2的项目如何能够完全迁移到python3
  8. python123第三章作业答案_swift playground类似的游戏
  9. nvr服务器系统,【64路IPC网络存储服务器(WNVR)】 - 太平洋安防网
  10. eclipse工具连接mysql_eclipse工具中使用Data Source Explorer连接数据库(MySQL)