spring-boot 4 相比 3.5.x 的包依赖变化

2025-11-21 spring-boot 4 发布正式版,自己手上的很小的项目(只依赖spring-boot、spring-boot-starter - web|webmvc、spring-boot-starter-jdbc,mysql-connector-j、lombok)尝了一下鲜,官方文档说的各种提升或者变化或者迁移指南就不写了,重点写一下差异。

pom.xml 变化

除了 3.5.x 变成 4.0.0 的变化之外,重要的是 spring-boot-starter-web 要改成 spring-boot-starter-webmvc

4.0.0 包依赖变化

同包只是升版本的删掉了

3.5.x 特有的 jar 包

sql 复制代码
├── jackson-datatype-jdk8-2.19.4.jar
├── jackson-datatype-jsr310-2.19.4.jar
├── jackson-module-parameter-names-2.19.4.jar
└── spring-jcl-6.2.14.jar

4.0.0 特有的 jar 包

arduino 复制代码
├── commons-logging-1.3.5.jar // 取消spring-jcl包
├── jspecify-1.0.0.jar
├── spring-boot-http-converter-4.0.0.jar
├── spring-boot-jackson-4.0.0.jar
├── spring-boot-jdbc-4.0.0.jar
├── spring-boot-persistence-4.0.0.jar
├── spring-boot-servlet-4.0.0.jar
├── spring-boot-sql-4.0.0.jar
├── spring-boot-tomcat-4.0.0.jar
├── spring-boot-transaction-4.0.0.jar
├── spring-boot-web-server-4.0.0.jar
└── spring-boot-webmvc-4.0.0.jar

可以看出来主要是 spring-boot 的变化,而且还非常大(和官方的细化模块依赖吻合),当然 4.0.0 才是第一个稳定版本,还不是 LTS 版本,依赖很有可能发生变化

额外的问题

jackson 从 2 升级到 3 了,之前数据库类型为 date 的字段输出变成了长格式,eg:2025-12-02T16:00:00.000Z这种,其实我想要的就是2025-12-02,可以配置增加一个属性即可。

yaml 复制代码
spring:
  jackson:
    date-format: yyyy-MM-dd

参考

github.com/spring-proj...

复制代码
相关推荐
2601_962073976 小时前
苍穹外卖-day07(Spring Cache & 购物车业务逻辑)
java·后端·spring
Sincerelyplz7 小时前
【Pipecat】基于Pipecat的voice agent实践
前端·后端·agent
摇滚侠7 小时前
《SpringBoot 3:入门与应用实战》第 10 章 REST 服务请求与调用 Reactor 与 WebFlux 笔记 28
spring boot·笔记·后端
唐青枫7 小时前
别只会用 put:Zig HashMap 从键值查找到高频统计实战
后端
ttwuai7 小时前
Go 后台清空操作日志失败,权限和无 WHERE 删除怎么排查?
开发语言·后端·golang
choumou_M7 小时前
SpringBoot_7:用户资源的上传与修改
java·spring boot·后端
user_admin_god8 小时前
一体化数据归集接口详细设计说明
java·大数据·spring boot·后端·spring
明月_清风8 小时前
十大经典排序算法 Go 实现全解:从入门到面试通关
后端·算法·排序算法
leeyi8 小时前
把规则搬回家:三个 BC 的贫血→充血重构实录(第103篇)
后端
学长毕业设计8 小时前
基于SpringBoot的旅游美食攻略分享系统的设计与实现(源码+文档+讲解视频)
spring boot·旅游·美食