- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第
SpringBoot2.x到3.2的全面升级指南
SpringFramework是一种流行的开源企业级框架,用于创建在JavaVirtualMachine(JVM)上运行的独立、生产级应用程序。而SpringBoot是一个工具,可以让使用Spring框架更快、更轻松地开发Web应用程序和微服务。随着SpringBoot的不断发展,开发人员必须跟上最新的升级和变化。
最近,SpringBoot宣布发布3.2.x版本,该版本带来了多项新功能、错误修复和增强功能,鉴于对SpringBoot2.7.x版本的支持已于2025年11月18日结束,这是一个非常重要且强制性的关注用于将SpringBoot应用程序升级到最新的3.x版本。
因此,在本文中,我们将讨论如何从SpringBoot2.x迁移到3.x,以及升级的优势以及开发人员在此过程中可能遇到的潜在困难。
1.升级JDK17
SpringBoot3.0需要Java17作为最低版本。
如果您当前使用的是Java8或Java11,则需要在SpringBoot迁移之前升级JDK。
2.升级到SpringBoot3
查看项目及其依赖项的状态后,请升级到SpringBoot3.0的最新维护版本。
我们将使用SpringBoot3.2.0进行升级。
打开项目的pom.xml并更新SpringBoot的版本,如下所示。
parent
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-starter-parent/artifactId
version3.2.0/version
/parent
3.配置属性迁移
在SpringBoot3.0中,一些配置属性被重命名/删除,开发人员需要相应地更新其perties/application.yml。
为了帮助您实现这一点,SpringBoot提供了一个spring-boot-properties-migrator模块。
我们可以通过将以下内容添加到Mavenpom.xml来添加迁移器:
dependency
groupIdorg.springframework.boot/groupId
artifactIdspring-boot-properties-migrator/artifactId
scoperuntime/scope
/dependency
4.升级到JakartaEE
由于JavaEE已更改为JakartaEE,SpringBoot3.x的所有依赖项API也从JavaEE升级为JakartaEE。
简单来说,您需要将所有javax的imports都替换为jakarta。具体如下:
javax.persistence.*-jakarta.persistence.*
javax.validation.*-jakarta.validation.*
javax.servlet.*-jakarta.servlet.*
javax.annotation.*-jakarta.annotation.*
javax.transaction.*-jakarta.transaction.*
5.调整@ConstructorBinding注解
@ConstructorBinding在@ConfigurationProperties类的类型级别不再需要,应将其删除。
当一个类或记录有多个构造函数时,它仍然可以在构造函数上使用,以指示应使用哪一个构造函数进行属性绑定。
6.SpringMVC和WebFlux的URL匹配更改
从SpringFramework6.0开始,尾部斜杠匹配配置选项已为deprecated,其默认值设置为false。
这意味着以前,以下控制器将匹配GET/health和GET/health/
@RestController
publicclassHealthController{
@GetMapping(/health)
publicStringhealth(){
returnApplicationisWorking
@RestC
您可能关注的文档
最近下载
- DIN 9830 冲压件切割毛边高度.pdf VIP
- 2024-2025学年广东省深圳市红岭中学九年级上学期开学考数学试题及答案.pdf VIP
- 2020秋部编人教版语文二年级上册全册课件.pptx VIP
- 古建筑传统瓦工(砧刻工砌花街工泥塑工古建瓦工)施工机械用电管理详细措施.docx VIP
- (高清版)DB51∕T 2997-2023 四川省水文数据通信传输指南 .pdf VIP
- 二升三年级数学暑假作业完整版25天.pdf VIP
- 统编《世界历史》九年级上册教材分析与建议.doc VIP
- 沪教牛津版八年级英语上册词汇表.docx VIP
- 2025年全国翻译专业资格(水平)考试西班牙语二级口译试卷.docx VIP
- GB∕T 5796.1-2022 梯形螺纹 第1部分:牙型.pdf
文档评论(0)