1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-25 02:27:10 +08:00

[docs update]Spring,Spring MVC,Spring Boot 之间什么关系?

This commit is contained in:
guide 2022-04-03 20:50:33 +08:00
parent e912585b27
commit 1503850f21
2 changed files with 24 additions and 4 deletions

View File

@ -5,7 +5,7 @@ category: 开源项目
精选 Github 和 Gitee 上优质的 Java 开源项目,希望能够帮助到你。
欢迎大家在 [issues 区](https://github.com/CodingDocs/awesome-java/issues)推荐自己认可的 Java 开源项目,让我们共同维护一个优质的 Java 开源项目精选集!
欢迎大家在项目 [issues 区](https://github.com/CodingDocs/awesome-java/issues)或者当前页面的评论区推荐自己认可的 Java 开源项目,让我们共同维护一个优质的 Java 开源项目精选集!
- Github 地址:[https://github.com/CodingDocs/awesome-java](https://github.com/CodingDocs/awesome-java)
- Gitee 地址:[https://gitee.com/SnailClimb/awesome-java](https://gitee.com/SnailClimb/awesome-java)

View File

@ -34,11 +34,11 @@ Spring 提供的核心功能主要是 IoC 和 AOP。学习 Spring ,一定要
下图对应的是 Spring4.x 版本。目前最新的 5.x 版本中 Web 模块的 Portlet 组件已经被废弃掉,同时增加了用于异步响应式处理的 WebFlux 组件。
![Spring主要模块](https://images.xiaozhuanlan.com/photo/2019/e0c60b4606711fc4a0b6faf03230247a.png)
![Spring主要模块](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/github/javaguide/jvme0c60b4606711fc4a0b6faf03230247a.png)
**Spring Core**
核心模块, Spring 其他所有的功能基本都需要依赖于该类库,主要提供 IoC 依赖注入功能的支持。
核心模块, Spring 其他所有的功能基本都需要依赖于该模块,主要提供 IoC 依赖注入功能的支持。
**Spring Aspects**
@ -73,6 +73,26 @@ Spring 团队提倡测试驱动开发TDD。有了控制反转 (IoC)的帮
Spring 的测试模块对 JUnit单元测试框架、TestNG类似 JUnit、Mockito主要用来 Mock 对象、PowerMock解决 Mockito 的问题比如无法模拟 final, static private 方法)等等常用的测试框架支持的都比较好。
## Spring,Spring MVC,Spring Boot 之间什么关系?
很多人对 Spring,Spring MVC,Spring Boot 这三者傻傻分不清楚!这里简单介绍一下这三者,其实很简单,没有什么高深的东西。
Spring 包含了多个功能模块(上面刚刚提高过),其中最重要的是 Spring-Core主要提供 IoC 依赖注入功能的支持) 模块, Spring 中的其他模块(比如 Spring MVC的功能实现基本都需要依赖于该模块。
下图对应的是 Spring4.x 版本。目前最新的 5.x 版本中 Web 模块的 Portlet 组件已经被废弃掉,同时增加了用于异步响应式处理的 WebFlux 组件。
![Spring主要模块](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/github/javaguide/jvme0c60b4606711fc4a0b6faf03230247a.png)
Spring MVC 是 Spring 中的一个很重要的模块,主要赋予 Spring 快速构建 MVC 架构的 Web 程序的能力。MVC 是模型(Model)、视图(View)、控制器(Controller)的简写,其核心思想是通过将业务逻辑、数据、显示分离来组织代码。
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/java-guide-blog/image-20210809181452421.png)
使用 Spring 进行开发各种配置过于麻烦比如开启某些 Spring 特性时,需要用 XML 或 Java 进行显式配置。于是Spring Boot 诞生了!
Spring 旨在简化 J2EE 企业应用程序开发。Spring Boot 旨在简化 Spring 开发(减少配置文件,开箱即用!)。
Spring Boot 只是简化了配置,如果你需要构建 MVC 架构的 Web 程序,你还是需要使用 Spring MVC 作为 MVC 框架,只是说 Spring Boot 帮你简化了 Spring MVC 的很多配置,真正做到开箱即用!
## Spring IOC & AOP
### 谈谈自己对于 Spring IoC 的了解
@ -295,7 +315,7 @@ Model2 模式下还存在很多问题Model2 的抽象和封装程度还远远
随着 Spring 轻量级开发框架的流行Spring 生态圈出现了 Spring MVC 框架, Spring MVC 是当前最优秀的 MVC 框架。相比于 Struts2 Spring MVC 使用更加简单和方便,开发效率更高,并且 Spring MVC 运行速度更快。
MVC 是一种设计模式,Spring MVC 是一款很优秀的 MVC 框架。Spring MVC 可以帮助我们进行更简洁的 Web 层的开发,并且它天生与 Spring 框架集成。Spring MVC 下我们一般把后端项目分为 Service 层处理业务、Dao 层数据库操作、Entity 层实体类、Controller 层(控制层,返回数据给前台页面)。
MVC 是一种设计模式Spring MVC 是一款很优秀的 MVC 框架。Spring MVC 可以帮助我们进行更简洁的 Web 层的开发,并且它天生与 Spring 框架集成。Spring MVC 下我们一般把后端项目分为 Service 层处理业务、Dao 层数据库操作、Entity 层实体类、Controller 层(控制层,返回数据给前台页面)。
### SpringMVC 工作原理了解吗?