以下基于本人项目,如有问题欢迎指出。如有新的内容添加,评论区见........
一、JDK的变化
SpringBoot3.X以上需要Java17作为最低版本。下载地址Java Archive Downloads - Java SE 17,根据自己的系统版本选择下载即可
二、Spring Framework 版本
SpringBoot 3.0基于SpringFramework 6.0,本例中用的是springboot最新版3.4,SpringFramework用的6.2
三、maven版本升级
Java17之后需要匹配一个较新的maven版本,应限制在3.6.0以上.。本例中用的是maven 3.6.3。Maven官网 下载需要的本部即可
Springboot 官网建议:
四、底层依赖更新
Springboot3之后已经将所有底层依赖项从 Java EE 迁移到了 Jakarta EE API
如下图:
springboot2.X
Springboot3.x
五、redis配置变化
在Springboot2.x 的版本中,redis的默认配置是 spring.redis.*,升级成 Springboot 3.x 以后,redis 的默认配置调整为了spring.data.redis.*
Springboot2.x
Springboot3.x
六、maven引入相关依赖变化
1、mybatis-plus
Springboot2.x
springboot3.x
2、mysql-connector
Springboot2.x
springboot3.x
3、Druid 连接池
springboot 2.x
springboot3.x
4、commons-pool2
springboot2.x
springboot3.x
5、Lombok
springboot2.x
springboot3.x
6、bomidou多数据源插件
springboot2.x
springboot3.x
7、swagger变化
说明:SpringFox已多年未更新,暂不支持SpingBoot3.x。替代方案使用Springdoc OpenAPI. Springdoc集成并实现了swagger相关功能。相关版本也适用SpringBoot2.x
下图为官网截图:
因我使用的是springboot3.4所以选择与其匹配的springdoc2.7.0
在升级的过程中也使用过其他版本,比如2.0、2.5版本的springdoc是不行的,与spring6.2有冲突(不影响项目的启动,但是无法使用swagger)
按官网建议选择需要的版本
(1)springdoc的配置
(2)openAPI的配置
(3)相关注解对照
8、去掉的依赖
以下:因springboot3.4中已经引入,所以不需要再额加入
七、Springboot3.X
项目中springboot版本号更改后,springboot下相关的starter会自动随着更新,当然是在没用定死版本号的情况下。例如一下springboot官方组件
Springboot3.4官网依赖建议: