当前位置: 首页 > news >正文

领导让你从springboot2.X升级到springboot3.X 这篇文章就够了

这篇文章主要是讲解springboot3.X的升级思路和常见问题的解决方法,包含但不限于: 1、升级springboot3.X的依赖管理2、升级springboot3.X的配置文件3、升级springboot3.X的代码。
其中也涉及到一些依赖版本的替换和配置信息更改方法。

1、切换JDK版本为17及以上

官网下载地址:

https://www.oracle.com/java/technologies/downloads/#java21

配置IDEA的JDk版本

在IDEA中打开项目,点击File -> Settings -> Project Structure -> Project -> JDK,选择你下载的JDK版本。

配置pom文件的版本
<properties><maven.compiler.source>21</maven.compiler.source><maven.compiler.target>21</maven.compiler.target><java.version>21</java.version></properties>

2、升级springboot3.X

升级springboot3.X的依赖管理
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.5.15</version><relativePath/><!-- lookup parent from repository --></parent>

3、切换Maven版本为3.9.1及以上

官网下载地址:

https://maven.apache.org/download.cgi

配置IDEA的Maven版本

在IDEA中打开项目,点击File -> Settings -> Project Structure -> Project -> Maven,选择你下载的Maven版本。

4、切换Mysql版本为8.0及以上

官网下载地址:

https://dev.mysql.com/downloads/mysql/

切换Druid数据源为HikariCP-依赖配置
<dependency><groupId>com.zaxxer</groupId><artifactId>HikariCP</artifactId><version>${HikariCP.version}</version></dependency>
YML配置
spring:datasource:driver-class-name:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://localhost:3306/test?characterEncoding=utf-8&autoReconnect=true&serverTimezone=Asia/Shanghaiusername:rootpassword:roothikari:# 最小空闲连接minimum-idle:5# 最大连接池数量(生产建议10-30,根据DB配置调整)maximum-pool-size:20# 从池获取连接等待超时 毫秒connection-timeout:30000# 连接空闲多久释放 毫秒(小于mysql wait_timeout,mysql默认8小时,这里设300000=5分钟)idle-timeout:300000# 连接生命周期,强制回收,避免无效长连接max-lifetime:1800000# 测试连接有效性的SQLconnection-test-query:SELECT 1# 池名称,日志区分pool-name:HikariPool-DB

4、lombok注解版本切换为1.18.30

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30</version><scope>provided</scope></dependency>

5、fastjson更改成fastjson2

<dependency><groupId>com.alibaba.fastjson2</groupId><artifactId>fastjson2</artifactId><version>2.0.48</version></dependency>
代码更改常见问题
fastjson语法importcom.alibaba.fastjson.JSONObject
fastjson2语法importcom.alibaba.fastjson2.JSONObject
fastjson语法JSONObject.parseArray()
fastjson2语法JSON.parseArray()

6、httpclient4更改成httpclient5

<dependency><groupId>org.apache.httpcomponents.client5</groupId><artifactId>httpclient5</artifactId><version>5.6.1</version></dependency>
代码更改常见问题
4.x语法importorg.apache.http.
5.x语法importorg.apache.hc.client5.http.
4.x语法 builder.setRetryHandler(newDefaultHttpRequestRetryHandler(3,true))
5.x语法 builder.setRetryStrategy(newDefaultHttpRequestRetryStrategy(3,TimeValue.ofSeconds(1)));
4.x语法RequestConfig.custom().setConnectTimeout(5000).setSocketTimeout(10000).setConnectionRequestTimeout(3000).build();
5.x语法importorg.apache.hc.core5.util.Timeout;RequestConfig.custom().setConnectTimeout(Timeout.ofMilliseconds(5000))// setSocketTimeout 废弃 → setResponseTimeout.setResponseTimeout(Timeout.ofMilliseconds(10000)).setConnectionRequestTimeout(Timeout.ofMilliseconds(3000)).build();

7、其他常见切换

比如:swagger切换内置的openapi规范;hystrix切换为内置的Resilience4j等等。

http://www.gsyq.cn/news/1589797.html

相关文章:

  • 2026软件测试高频面试题
  • 浏览器资源嗅探扩展深度解析:猫抓的技术架构与实战应用完全指南
  • 论文写作黑科技!常用的AI写作辅助软件,框架搭建零压力
  • PHP变量覆盖漏洞实战:从原理到EDR后台渗透测试案例
  • PN7462时钟与电源管理:从寄存器配置到嵌入式系统稳定实战
  • 深度学习模型部署:从 PyTorch 到 ONNX Runtime 的推理加速路径
  • STM32单片机超声波避障智能车锂电池充电系统108-1(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_可以扫码
  • 塞尔达传说旷野之息存档编辑器的终极指南:快速修改卢比、武器和属性
  • 高并发 AI 工作流:基于 Go 语言并发栅栏的并行任务控制实践
  • 彻底掌握你的数字记忆:WeChatMsg开源工具完全指南
  • 2026 年政务数据怎么管?一个大数据局的经验分享
  • Agentic System与AI Agent的本质区别:从单点智能到系统化决策
  • SAP系统自学到底靠谱吗?
  • 终极NDS游戏编辑器Tinke:10分钟掌握游戏文件修改技巧
  • MagicAnimate实战指南:基于扩散模型的时间一致性人物动画生成深度解析
  • 关键领域软件研发如何破局?Gitee Repo制品管理方案深度解析
  • Selenium WebDriver高级应用:从智能等待到反检测的实战指南
  • B站视频收藏者的救星:三步解锁m4s缓存文件
  • 高效一键生成论文工具梯队划分(2026 最新版)
  • Space Thumbnails:3D模型文件预览终极指南,让你的Windows资源管理器更智能
  • 工商业光伏电站并网技术演进:从DL/T 2041-2025新政看追踪式电站设计要点
  • 3步诊断法:为什么你的Stardew Valley模组总是出问题?
  • 8周机器学习实战路径:从概念建模到可部署模型
  • 生成式AI动画工作流:模块化生成+人工精控实战指南
  • PX4无人车-参数梳理
  • 终极指南:1分钟解决iPhone在Windows上的USB网络共享驱动问题
  • Windows风扇控制终极指南:掌握Fan Control实现静音高效散热
  • 关于前端引流长久运营的思考
  • 工业级遗传算法实战:解决早熟收敛与约束违规
  • 三招让你的暗黑破坏神2在现代PC上完美重生:D2DX宽屏高帧率解决方案