Java面试八股之后Spring、spring mvc和spring boot的区别

  1. Spring、spring mvc和spring boot的区别

Spring, Spring Boot和Spring MVC都是Spring框架家族的一部分,它们各自有其特定的用途和优势。下面是它们之间的主要区别:

Spring:

Spring 是一个开源的轻量级Java开发框架,最初由Rod Johnson创建,旨在简化企业级应用的开发。Spring的核心特性是依赖注入(Dependency Injection, DI)和面向切面编程(Aspect Oriented Programming, AOP),这有助于实现组件之间的解耦和可测试性。

Spring 提供了模块化的支持,包括数据访问/集成、事务管理、模型-视图-控制器(MVC)Web应用、远程处理、测试和安全服务等。

Spring MVC:

Spring MVC 是Spring框架的一部分,专注于Web应用程序的开发,它实现了MVC设计模式,将业务逻辑、数据和展示层分开,使得Web应用的开发更加清晰和结构化。

Spring MVC 提供了处理HTTP请求和响应的机制,以及视图解析和表单处理等功能,它使用注解来简化配置和控制器类的定义。

Spring Boot:

Spring Boot 是建立在Spring框架之上的一个微服务框架,它的目标是简化新Spring应用的初始设置和配置。Spring Boot 采用"约定优于配置"的原则,提供了默认配置来减少需要显式配置的选项数量。

Spring Boot 自动配置了许多常见场景下的bean,例如连接数据库、使用缓存、安全、邮件发送等,这使得开发者可以快速启动并运行一个Spring应用。

它内置了嵌入式的Servlet容器(如Tomcat或Jetty),因此不需要外部的Web服务器就可以运行应用。

总结来说:

Spring 是一个核心的、基础的框架,提供了广泛的开发支持。

Spring MVC 是一个专注于Web应用的框架,是Spring框架的一部分,用于构建MVC架构的Web应用。

Spring Boot 是一个建立在Spring框架之上的快速应用开发框架,它简化了配置和部署过程,适合现代微服务架构的快速开发。

如果大家需要视频版本的讲解,欢迎关注我的B站:

相关推荐
Java成神之路-5 分钟前
彻底搞懂Spring IoC 容器:容器本体、扩展机制、三级缓存与 getBean
spring
lifallen10 分钟前
Flink Source / Sink Exactly-Once 边界分析
java·大数据·flink
xyyaihxl16 分钟前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
studyForMokey18 分钟前
【Android面试】动画 & Bitmap
android·面试·职场和发展
网域小星球18 分钟前
C++ 从 0 入门(五)|C++ 面试必知:静态成员、友元、const 成员(高频考点)
开发语言·c++·面试·静态成员·友元函数
黑牛儿37 分钟前
面试高频问题:从浏览器请求到PHP响应:完整流程拆解
android·后端·面试·php
0xDevNull1 小时前
Spring Boot 3.x 整合 Nacos 全栈实战教程
java·spring boot·nacos
落木萧萧8251 小时前
MyBatisGX 示例工程:CRUD + 关联查询完整演示
java·后端
两年半的个人练习生^_^1 小时前
每日一学:设计模式之原型模式
java·开发语言·设计模式·原型模式
biubiubiu07061 小时前
Maven 父子工程 SpringBoot 多模块
java·spring boot·maven