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

相关推荐
在努力的前端小白5 小时前
Spring Boot 敏感词过滤组件实现:基于DFA算法的高效敏感词检测与替换
java·数据库·spring boot·文本处理·敏感词过滤·dfa算法·组件开发
白仑色13 小时前
Spring Boot 全局异常处理
java·spring boot·后端·全局异常处理·统一返回格式
Monly2113 小时前
RabbitMQ:SpringAMQP 入门案例
spring boot·rabbitmq·java-rabbitmq
Monly2113 小时前
RabbitMQ:SpringAMQP Fanout Exchange(扇型交换机)
spring boot·rabbitmq·java-rabbitmq
每天学习一丢丢13 小时前
Spring Boot + Vue 项目用宝塔面板部署指南
vue.js·spring boot·后端
黑客影儿14 小时前
Java技术总监的成长之路(技术干货分享)
java·jvm·后端·程序人生·spring·tomcat·maven
杨DaB15 小时前
【SpringBoot】Dubbo、Zookeeper
spring boot·后端·zookeeper·dubbo·java-zookeeper
柯南二号15 小时前
【后端】SpringBoot中HttpServletRequest参数为啥不需要前端透传
前端·spring boot·后端
盖世英雄酱5813616 小时前
第一个RAG项目遇到的问题
java·spring boot
RainbowSea19 小时前
伙伴匹配系统(移动端 H5 网站(APP 风格)基于Spring Boot 后端 + Vue3 - 06
java·spring boot·后端