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在此基础上增加了分布式系统的支持组件。

相关推荐
Cyanto38 分钟前
Spring注解IoC与JUnit整合实战
java·开发语言·spring·mybatis
qq_4338889339 分钟前
Junit多线程的坑
java·spring·junit
gadiaola43 分钟前
【SSM面试篇】Spring、SpringMVC、SpringBoot、Mybatis高频八股汇总
java·spring boot·spring·面试·mybatis
写不出来就跑路1 小时前
WebClient与HTTPInterface远程调用对比
java·开发语言·后端·spring·springboot
麦兜*1 小时前
Spring Boot 集成Reactive Web 性能优化全栈技术方案,包含底层原理、压测方法论、参数调优
java·前端·spring boot·spring·spring cloud·性能优化·maven
天上掉下来个程小白2 小时前
MybatisPlus-06.核心功能-自定义SQL
java·spring boot·后端·sql·微服务·mybatisplus
小马爱打代码3 小时前
Spring Boot:将应用部署到Kubernetes的完整指南
spring boot·后端·kubernetes
代码的余温5 小时前
Spring Boot集成Logback日志全攻略
xml·spring boot·logback
没有bug.的程序员5 小时前
JAVA面试宝典 -《Spring Boot 自动配置魔法解密》
java·spring boot·面试
William一直在路上5 小时前
SpringBoot 拦截器和过滤器的区别
hive·spring boot·后端