从Spring到SpringBoot3的演进:缺陷、优化与最新实践要求

编程达人挑战赛·第4期 10w+人浏览 240人参与

目录

1. Spring框架的缺点

2. 什么是SpringBoot

2.1. 自动配置

2.2. 起步依赖

3. SpringBoot3介绍

4. 总结


前言:

从本文开始,我们就开始SpringBoot的学习

在这里大家帮助大家更好的理解和掌握SpringBoot3的学习

如果你想快速复习和回忆,可以直接跳到结尾的思维导图~~~

个人主页:艺杯羹

1. Spring框架的缺点

Spring是一个非常优秀的轻量级框架,以IOC(控制反转)AOP(面向切面)为思想内核,极大简化了JAVA企业级项目的开发

虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。使用Spring进行项目开发需要在配置文件中写很多代码,所有这些配置都代表了开发时的损耗。

除此之外,Spring项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,需要分析要导入哪些库的坐标,而且还需要分析导入与之有依赖关系的其他库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开发进度。比如Spring5.0以上只能使用Junit4.12以上的版本

<!-- Spring传统依赖配置示例(需手动匹配版本) -->
<dependencies>
    
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.3.20</version>
    </dependency>
    
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>5.3.20</version>
    </dependency>
    
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>5.3.20</version>
    </dependency>
    
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.1</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

总结起来,Spring的缺点就是:

  1. 配置过于繁琐
  2. 引入的依赖过多,版本控制复杂

2. 什么是SpringBoot

两大核心功能:自动配置起步依赖

SpringBoot对Spring进行优化,是基于“约定大于配置”的思想

约定为什么大于配置?
因为我们在使用Spring的时候,有些操作,是我们程序员公认的,那么这个就是约定,由这个约定就可以预先装好这个配置,所以在SpringBoot里面有些是固定的
一句话:通过预定义一套业界公认的 “约定”,来减少甚至消除重复的、样板式的配置,从而简化开发流程,提高效率

所以,SpringBoot只是对简化了Spring
SpringBoot是一个服务于框架的框架

它不是对Spring功能的增强,而是提供了一种快速使用Spring框架的方式 ,只是简化了而已

SpringBoot的优点:

  1. 配置简单
  2. 依赖引入简单
  3. 提供了一些大型项目的非功能特性,如嵌入式服务器,安全指标,健康监测等

2.1. 自动配置

SpringBoot项目自动提供最优配置,同时可以修改默认值满足特定的要求

2.2. 起步依赖

SpringBoot的依赖是基于功能的,而不是普通项目的依赖是基于JAR包的
SpringBoot将完成一个功能所需要的所有坐标打包到一起,并完成了版本适配,我们在使用某功能时只需要引入一个依赖即可

这里就体现的是我们程序员公认

3. SpringBoot3介绍

SpringBoot包含了12个月以来151个开发者的5700多次代码提交。这是自 2018年SpringBoot发布2.0以来,SpringBoot的第一次重大修订

当然使用SpringBoot是需要一定版本要求的:

工具版本要求
IDEA2021.2.1+
Java17+
Maven3.5+
Tomcat10.0+
Servlet5.0+
GraalVM(原生镜像功能)Community 22.3+
Native Build Tools(原生镜像功能)0.9.19+

这里就要注意,要达到对应版本的要求

4. 总结

到此,就先告一段落,下篇文章,深入了解一下SpringBoot~~~

评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

艺杯羹

你的鼓励是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值