參考:

构建微服务:Spring boot 入门篇       https://www.cnblogs.com/ityouknow/p/5662753.html

Spring Cloud与Docker的完美结合 https://blog.csdn.net/huanglitao0912/article/details/82314123

SpringCloud与SpringBoot区别  https://blog.csdn.net/terrydu/article/details/88565833

Spring,Spring MVC及Spring Boot区别   https://www.jianshu.com/p/42620a0a2c33

Springboot,SSM框架比较,区别   https://www.cnblogs.com/fightingting/p/10587613.html

1、Spring boot 是 Spring 的一套快速配置脚手架,可以基于spring boot 快速开发单个微服务;Spring Cloud是一个基于Spring Boot实现的云应用开发工具;

2、Spring boot专注于快速、方便集成的单个个体,Spring Cloud是关注全局的服务治理框架;

3、spring boot使用了默认大于配置的理念,很多集成方案已经帮你选择好了,能不配置就不配置,Spring Cloud很大的一部分是基于Spring boot来实现。

4、Spring boot可以离开Spring Cloud独立使用开发项目,但是Spring Cloud离不开Spring boot,属于依赖的关系。

1.1 SpringMVC 概述 

1) Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的

MVC 框架之一

2)Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。

3)Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任

何接口。

4)支持 REST 风格的 URL 请求。

5)采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。

1.1 SpringMVC是什么

1)一种轻量级的、基于MVC的Web层应用框架。偏前端而不是基于业务逻辑层。Spring框架的一个后续产品。

2)Spring框架结构图(新版本):

1.3 SpringMVC能干什么

1) 天生与Spring框架集成,如:(IOC,AOP)

2) 支持Restful风格

3) 进行更简洁的Web层开发

4) 支持灵活的URL到页面控制器的映射

5) 非常容易与其他视图技术集成,如:Velocity、FreeMarker等等

6) 因为模型数据不存放在特定的API里,而是放在一个Model里(Map数据结构实现,因此很容易被其他框架使用)

7) 非常灵活的数据验证、格式化和数据绑定机制、能使用任何对象进行数据绑定,不必实现特定框架的API

8) 更加简单、强大的异常处理

9) 对静态资源的支持

10) 支持灵活的本地化、主题等解析

1.4 SpringMVC怎么玩

1) 将Web层进行了职责解耦,基于请求-响应模型

2) 常用主要组件

① DispatcherServlet:前端控制器

② Controller:处理器/页面控制器,做的是MVC中的C的事情,但控制逻辑转移到前端控制器了,用于对请求进行处理

③ HandlerMapping :请求映射到处理器,找谁来处理,如果映射成功返回一个HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器对象)

④ View Resolver : 视图解析器,找谁来处理返回的页面。把逻辑视图解析为具体的View,进行这种策略模式,很容易更换其他视图技术;

n 如InternalResourceViewResolver将逻辑视图名映射为JSP视图

⑤ LocalResolver:本地化、国际化

⑥ MultipartResolver:文件上传解析器

⑦ HandlerExceptionResolver:异常处理器

1.5 REST是什么?

1) REST:即 Representational State Transfer。(资源)表现层状态转化。是目前最流行

的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用

① 资源(Resources):网络上的一个实体,或者说是网络上的一个具体信息。

它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的存在。

可以用一个URI(统一资源定位符)指向它,每种资源对应一个特定的 URI 。

获取这个资源,访问它的URI就可以,因此 URI 即为每一个资源的独一无二的识别符。

② 表现层(Representation):把资源具体呈现出来的形式,叫做它的表现层(Representation)。比如,文本可以用 txt 格式表现,也可以用 HTML 格式、XML 格式、JSON 格式表现,甚至可以采用二进制格式。

③ 状态转化(State Transfer):每发出一个请求,就代表了客户端和服务器的一次交互过程。HTTP协议,是一个无状态协议,即所有的状态都保存在服务器端。因此,如果客户端想要操作服务器,必须通过某种手段,让服务器端发生“状态转化”(State Transfer)

而这种转化是建立在表现层之上的,所以就是 “表现层状态转化”。

④ 具体说,就是 HTTP 协议里面,四个表示操作方式的动词:GET、POST、PUT、DELETE。

它们分别对应四种基本操作:GET 用来获取资源,POST 用来新建资源,PUT 用来更新资源,DELETE 用来删除资源。

2. Spring 与SpringMVC的整合问题: 

1) 需要进行 Spring 整合 SpringMVC 吗 ?

2) 还是否需要再加入 Spring 的 IOC 容器 ?

3) 是否需要在web.xml 文件中配置启动 Spring IOC 容器的 ContextLoaderListener ?

需要: 通常情况下, 类似于数据源, 事务, 整合其他框架都是放在 Spring 的配置文件   中(而不是放在 SpringMVC 的配置文件中). 实际上放入 Spring 配置文件对应的 IOC 容器中的还有 Service 和 Dao.

不需要: 都放在 SpringMVC 的配置文件中. 也可以分多个 Spring 的配置文件, 然后使用 import 节点导入其他的配置文件

3. SpringIOC 容器和 SpringMVC IOC 容器的关系

SpringMVC 的 IOC 容器中的 bean 可以来引用 Spring IOC 容器中的 bean.

返回来呢 ? 反之则不行. Spring IOC 容器中的 bean 却不能来引用 SpringMVC IOC 容器中的 bean

1) 在 Spring MVC 配置文件中引用业务层的 Bean

2) 多个 Spring IOC 容器之间可以设置为父子关系,以实现良好的解耦。

3) Spring MVC WEB 层容器可作为 “业务层” Spring 容器的子容器:

即 WEB 层容器可以引用业务层容器的 Bean,而业务层容器却访问不到 WEB 层容器的 Bean

4. SpringMVC对比Struts2

1) Spring MVC 的入口是 Servlet, 而 Struts2 是 FilterSpring MVC 会稍微比 Struts2 快些.

2) Spring MVC 是基于方法设计, 而 Sturts2 是基于类,

每次发一次请求都会实例一个 Action.

1) Spring MVC 使用更加简洁, 开发效率Spring MVC确实比 struts2 高: 支持 JSR303, 处  理ajax 的请求更方便

2) Struts2 的 OGNL 表达式使页面的开发效率相比 Spring MVC 更高些.

转载于:https://www.cnblogs.com/highpointengineer/p/10895256.html

SpringMVC框架、Spring boot框架、SSM區別相关推荐

  1. Java--SSH,SSM和Spring Boot框架区别优缺点

    一.SSH(Struts + Spring + Hibernate) 1.基本概念 SSH框架是JAVA EE中三种框架所集成,分别是Struts,Spring,Hibernate框架所组成 集成SS ...

  2. spring boot框架学习2-spring boot核心(1)

    本节主要: 1:解析spring boot入口和@SpringBootApplication源码详解 SpringBootApplication包含: @SpringBootConfiguration ...

  3. springboot原生mysql写法_【Rainbond最佳实践】Spring Boot框架配置MySQL

    Rainbond开源软件介绍: Rainbond是国内首个开源的生产级无服务器PaaS. 深度整合基于Kubernetes的容器管理.多类型CI/CD应用构建与交付.多数据中心的资源管理等技术,提供云 ...

  4. spring boot 学习(二)spring boot 框架整合 thymeleaf

    spring boot 框架整合 thymeleaf spring boot 的官方文档中建议开发者使用模板引擎,避免使用 JSP.因为若一定要使用 JSP 将无法使用. 注意:本文主要参考学习了大神 ...

  5. Spring Boot框架表达式注入漏洞

    2019独角兽企业重金招聘Python工程师标准>>> 高危漏洞的曝光总是发生在意想不到的时刻:周末所有人都准备享受周末的时间,Spring Boot框架的SpEL表达式注入通用漏洞 ...

  6. spring boot框架学习学前掌握之重要注解(2)-通过java的配置方式进行配置spring

    本节主要内容: 1:通过代码演示实现零XML配置spring 2:使用重点注解理解 声明: 本文是<凯哥陪你学系列-框架学习之spring boot框架学习>中spring boot框架学 ...

  7. Spring Boot框架敏感信息泄露的完整介绍与SRC实战(附专属字典与PoC)

    转载于:https://www.freebuf.com/vuls/289710.html #前言 ##Spring Boot框架介绍 Spring框架功能很强大,但是就算是一个很简单的项目,我们也要配 ...

  8. Spring Boot框架中使用Jackson的处理总结

    1.前言 通常我们在使用Spring Boot框架时,如果没有特别指定接口的序列化类型,则会使用Spring Boot框架默认集成的Jackson框架进行处理,通过Jackson框架将服务端响应的数据 ...

  9. Spring Boot 框架介绍和使用

    本文参考自Spring Boot文档. Spring Boot 简介 Spring框架功能很强大,但是就算是一个很简单的项目,我们也要配置很多东西.因此就有了Spring Boot框架,它的作用很简单 ...

  10. Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )

    Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...

最新文章

  1. Windows Server 2003 R2實現域內共享打印機智能部署
  2. av_interleaved_write_frame -22
  3. python与人工智能编程-总算明白python人工智能编程入门案例
  4. [Issue Fixed]-分卷压缩解压:gzip: stdin: not in gzip format
  5. Java 支付项目实战教程,包括支付宝,微信等支付方式,不看亏!
  6. 获取前一天的时间安排表_要想有一个完美的婚礼 这份婚庆策划时间表少不了...
  7. 简单的 密文认证方式
  8. python学习笔记(四)字典(dict)
  9. c语言中的指针语法,C语言中指针的用法介绍
  10. HDU5119 - Happy Matt Friends
  11. python列表的小东西_小谈python里 列表 的几种常用用法
  12. 【故障诊断分析】基于matlab FFT轴承故障诊断【含Matlab源码 1397期】
  13. 【优化算法】人工生态系统优化算法(AEO)【含Matlab源码 023期】
  14. php实现先序、中序、后序遍历二叉树
  15. 天创速盈电商:拼多多用户群体分析
  16. 关于使用实验室服务器的GPU以及跑上TensorFlow代码
  17. 数据处理之缺失值填充
  18. 今天市场:洗洗更健康!
  19. idea,maven飘红及无法打包问题
  20. DSNet: A Flexible Detect-to-Summarize Network for Video Summarizationa论文笔记

热门文章

  1. 变形二叉树中节点的最大距离(树的最长路径)——非递归解法
  2. Linux---进程间通信
  3. Go语言---面向对象编程
  4. 【Express】—post传递参数
  5. 力扣 买卖股票的最佳时机II
  6. 虽然自己不是唱歌的材料
  7. 你觉得iPhone吸引你的是什么?
  8. 为何现在好多饭店熬汤不用骨头也能熬出来浓白色的汤?
  9. 一生只有一个配偶的动物,如果一方死亡了,另一方会怎么办?
  10. 今天有个微信好友咨询我