Spring、SpringMVC、Springboot三者的区别和联系

1.背景

最近有人问面试的一个问题:Spring、SpringMVC、Springboot三者的区别和联系,个人觉得:万变不离其宗,只需要理解其原理,回答问题信手拈来。

2.三者区别和联系

2.1 先了解Spring基础

Spring 框架就像一个家族,有众多衍生产品,例如 boot、security、jpa等等。但他们的基础都是Spring的Ioc和Aop,Ioc 提供了依赖注入的容器,Aop解决了面向切面的编程,然后在此两者的基础上实现了其他延伸产品的高级功能。

2.2 三者的演进关系

Spring 最初利用“工厂模式”(DI)和“代理模式”(AOP)解耦应用组件。大家觉得挺好用,于是按照这种模式搞了一个 MVC框架(一些用Spring 解耦的组件),用于开发 web 应用( SpringMVC )。然后发现每次开发都要写很多样板代码,为了简化工作流程,于是开发出了一些“懒人整合包”(starter),这套整合包就是 Spring Boot

2.3 三者的区别

  • Spring 是一个“引擎”;
  • Spring MVC 是基于Spring的一个 MVC 框架;
  • Spring Boot 是基于Spring4的条件注册的一套快速开发整合包。
  • 36
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring是一个开源的Java框架,用于构建企业级应用程序。它提供了一种轻量级的开发方式,通过依赖注入和面向切面编程等特性,简化了开发过程并提高了代码的可维护性和可测试性。\[1\] Spring MVC是基于Spring框架的一个MVC(Model-View-Controller)框架。它提供了一种结构化的方式来组织和管理Web应用程序的代码。Spring MVC通过将请求和响应分离,将业务逻辑与视图层解耦,使得开发人员可以更加专注于业务逻辑的实现。\[1\]\[2\] Spring Boot是基于Spring框架的一套快速开发整合包。它提供了一种简化的方式来构建独立的、可执行的Spring应用程序。Spring Boot通过自动配置和约定优于配置的原则,减少了开发人员的配置工作,使得开发人员可以更加快速地搭建和部署应用程序。\[1\] 总结起来,Spring是一个Java框架,用于构建企业级应用程序,而Spring MVC是基于SpringMVC框架,用于构建Web应用程序,而Spring Boot是基于Spring的一套快速开发整合包,用于简化应用程序的构建和部署过程。\[1\]\[2\] Spring还提供了许多其他功能模块,如Spring JDBC、Spring Security、Spring AOP等,用于简化开发工作并提高应用程序的性能和安全性。\[3\] #### 引用[.reference_title] - *1* *2* [Spring,Spring MVCSpring Boot区别](https://blog.csdn.net/qq_39270694/article/details/108317823)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [SpringSpringMVCSpringBoot关系](https://blog.csdn.net/qq_47183158/article/details/123066684)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值