Spring Boot和Spring MVC的区别

1 Spring MVC

  • 是Spring的一个模块,是一个web框架。
  • 分为Model,View,Controller(模型层、视图层、控制层)。

2 Spring Boot

  • Spring Boot 自动配置,降低了项目搭建的复杂度。
  • Spring框架需要大量的配置,Spring Boot 引入自动配置的概念,让项目设置变得很容易。
  • 本身并不提供Spring框架核心特征以及扩展,只用于快速开发新一代基于Spring框架的应用程序。也就是说,不是来替代Spring的,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。
  • 集成了大量常用第三方库,零配置开箱即用。如果承载的是WEB项目,使用Spring MVC作为MVC框架。
  • 不需要单独安装Tomcat这类容器服务器了,maven打出jar包直接跑起来就是这个网站。

Spring是一个引擎,SpringMVC是基于Spring的一个MVC框架,Spring Boot是基于Spring的条件注册的一套开发整合包

3 总结

两者作为Spring生态中的组件,产生时间不同,spring mvc很早就诞生,例如之前最主流的企业开发框架SSM(Spring+SpringleMVC+MyBatis),就用了Spring MVC。Spring Boot作为后起之秀,通过"约定大于配置"来减少许多配置,大大的提高了生产力。

3.1 什么是约定大于配置?

约定优于配置(convention over configuration),也称作按约定编程,是一种软件设计范式,旨在减少软件开发人员需做决定的数量,获得简单的好处,而又不失灵活性。

约定优于配置也被称为习惯优于配置、约定大于配置

比如说模型中有一个名为User的类,那么数据库中对应的表就会默认命名为user。只有在偏离这一个约定的时候,例如想要将该表命名为system_user,才需要写有关这个名字的配置。

简单来说,如果你所用工具的约定和你的期待相符,就可以省去配置;不符合的话,你就要通过相关的配置来达到你所期待的结果。

约定优于配置意味着通用化,标准化,意味着开发者都需要遵循同一套约定。这样,当一个开发者要看另一个开发者写的程序的时候,就会很容易上手,因为他了解同一套约定,减少了重新学习的成本。

相关推荐
CoderYanger13 小时前
Java EE 进阶:5. Spring IoC&DI(第三弹):Spring DI
java·开发语言·spring boot·spring·面试·java-ee·mvc
郭小李13 小时前
spring中@Transactional注解对事务的支持
数据库·spring·oracle
小蒜学长15 小时前
基于SpringBoot 框架的自媒体新闻系统的设计与实现(代码+数据库+LW)
java·spring boot·后端·mysql数据库·自媒体新闻管理系统
余槐i16 小时前
PostgreSQL 加索引后查询反而更慢:优化器弃用索引的 3 种情形
spring boot·redis·mysql·postgresql·事务
学长毕设1 天前
基于springboot的食品仓库管理系统
java·spring boot·后端
步行cgn1 天前
FormHttpMessageConverter 详解:Spring MVC 中表单数据的读写转换器
java·spring·mvc
霸道流氓气质1 天前
智能客服组件:分层意图识别、RAG Advisor 与人工转接状态机的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
captain3761 天前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
步行cgn1 天前
Spring MVC + Thymeleaf 模板解析失败:从 500 错误到页面正常显示
java·spring·mvc
学到老活到老1 天前
第 24 集:配置文件写了 80,Spring Boot 为什么读到 90?
java·后端·spring