跳到主要内容

Spring Boot 3.0 升级指南

升级 JDK

Spring Boot 3.0 最低要求 Java 17,并向上兼容支持 Java 19。

升级依赖

配置属性

Spring Boot 3.0 提供了一个 spring-boot-properties-migrator 模块。一旦作为依赖关系添加到你的项目中,它不仅会在启动时分析你的应用程序的环境并打印诊断结果,而且还会在运行时为你临时迁移属性。

runtimeOnly("org.springframework.boot:spring-boot-properties-migrator")

完成迁移之后,务必要移除 spring-boot-properties-migrator 依赖。

Jakarta EE

Spring Boot 3.0 已将所有底层依赖项从 Java EE 迁移到了 Jakarta EE API,基于 Jakarta EE 9 并尽可能地兼容 Jakarta EE 10。

由于 Java EE 已经变更为 Jakarta EE,包名以 javax 开头的需要相应地变更为 jakarta

spring.factories

spring.factories 功能在 Spring Boot 2.7 已经废弃,在 Spring Boot 3.0 彻底移除。

Spring Boot 2.7 引入了一个新的文件 META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports 用于注册自动配置。

数据访问

spring.data 前缀已被保留给 Spring Data 项目,如果你使用了 Spring Data 项目的子项目,application.yaml 中相关的配置属性就需要相应的变更。例如 spring.redis 现在需要修改为 spring.data.redis

MySQL JDBC Driver

mysql:mysql-connector-java 更改为 com.mysql:mysql-connector-j

参考