Spring MVC、Spring Boot和Spring Cloud

一、Spring MVC

主要特点

传统的基于Servlet的Web框架: 需要手动配置Servlet、Filter等。

配置灵活: 可以使用XML或Java类来定义Bean和依赖关系。

依赖于Web容器: 需要部署到外部Web容器(如Tomcat、Jetty)中运行。

视图技术支持: 支持JSP、Thymeleaf、FreeMarker等多种视图技术。

目录结构

主要区别

配置复杂: 需要手动配置Servlet、Filter、Listener等。

依赖外部Web容器: 需要将应用程序打包成WAR文件并部署到Web容器中。

二、Spring Boot

主要特点

快速开发: 提供了自动配置,减少了大量的配置工作。

内嵌Web服务器: 内嵌Tomcat、Jetty等Web服务器,可以直接运行。

独立运行: 可以打包成JAR文件,独立运行,不需要外部Web容器。

丰富的Starter: 提供了各种Starter依赖,简化了依赖管理。

目录结构

主要区别

自动配置: 大量的自动配置减少了手动配置的工作量。

内嵌Web服务器: 可以直接运行,不需要外部Web容器。

独立运行: 可以打包成JAR文件,独立运行。

三、SpringCloud

主要特点

基于Spring Boot: 继承了Spring Boot的所有优点,如自动配置和内嵌Web服务器。

分布式系统支持: 提供了服务发现、配置管理、负载均衡、断路器等功能。

微服务架构: 适用于构建微服务架构的应用程序。

丰富的组件: 提供了Eureka、Config、Ribbon、Hystrix、Zuul等组件,简化了分布式系统的开发。

目录结构

主要区别

分布式系统支持: 提供了服务发现、配置管理、负载均衡、断路器等功能,适用于构建分布式系统和微服务架构。

基于Spring Boot: 继承了Spring Boot的所有优点,如自动配置和内嵌Web服务器。

总结

Spring MVC: 传统的Web框架,需要手动配置,依赖于外部Web容器。

Spring Boot: 基于Spring的快速开发框架,提供自动配置和内嵌Web服务器,可以独立运行。

Spring Cloud: 基于Spring Boot,用于构建分布式系统和微服务架构,提供了许多分布式系统的基础设施。

每种框架的目录结构大致相似,但Spring Boot和Spring Cloud简化了配置,并且通常包含一个主类(如 Application.java)来启动应用程序。Spring Cloud在此基础上增加了分布式系统的支持组件。

相关推荐
为java加瓦20 小时前
Spring 方法注入机制深度解析:Lookup与Replace Method原理与应用
java·数据库·spring
无名客020 小时前
SpringCloud中的网关(Gateway)的作用是什么?
spring·spring cloud·gateway
hweiyu0021 小时前
Spring Boot 项目集成 Gradle:构建、测试、打包全流程教程
java·spring boot·后端·gradle
一勺菠萝丶21 小时前
Spring Boot 项目启动报错:`Could not resolve type id ... no such class found` 终极解决方案!
java·spring boot·后端
hrrrrb1 天前
【Spring Security】Spring Security 概念
java·数据库·spring
小信丶1 天前
Spring 中解决 “Could not autowire. There is more than one bean of type“ 错误
java·spring
摇滚侠1 天前
Spring Boot 3零基础教程,IOC容器中组件的注册,笔记08
spring boot·笔记·后端
程序员小凯1 天前
Spring Boot测试框架详解
java·spring boot·后端
程序员小凯1 天前
Spring Boot缓存机制详解
spring boot·后端·缓存
hello 早上好1 天前
深入 Spring 依赖注入底层原理
数据库·sql·spring