You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 3.2.4中Base64Utils.encodeToString弃用后的迁移方案咨询

Spring Base64Utils 弃用后的代码迁移方案

org.springframework.util.Base64Utils 从Spring 6.0.5起被标记为弃用待移除,Spring Boot 3.2.4中其encodeToString等方法也已弃用,官方推荐直接使用JDK标准库的java.util.Base64工具类进行替代,具体迁移方式如下:

编码场景迁移

标准Base64编码(对应原Base64Utils.encodeToString)

原代码:

import org.springframework.util.Base64Utils;

byte[] data = "test".getBytes();
String encoded = Base64Utils.encodeToString(data);

迁移后代码:

import java.util.Base64;

byte[] data = "test".getBytes();
String encoded = Base64.getEncoder().encodeToString(data);

URL安全的Base64编码(对应原Base64Utils.encodeUrlSafeToString)

原代码:

String encodedUrlSafe = Base64Utils.encodeUrlSafeToString(data);

迁移后代码:

String encodedUrlSafe = Base64.getUrlEncoder().encodeToString(data);

解码场景迁移

标准Base64解码(对应原Base64Utils.decodeFromString)

原代码:

byte[] decoded = Base64Utils.decodeFromString(encoded);

迁移后代码:

byte[] decoded = Base64.getDecoder().decode(encoded);

URL安全的Base64解码(对应原Base64Utils.decodeUrlSafeFromString)

原代码:

byte[] decodedUrlSafe = Base64Utils.decodeUrlSafeFromString(encodedUrlSafe);

迁移后代码:

byte[] decodedUrlSafe = Base64.getUrlDecoder().decode(encodedUrlSafe);

注意事项

  • JDK的java.util.Base64从Java 8开始提供,Spring Boot 3.x要求Java 17及以上版本,完全兼容该API,无需额外引入依赖。
  • 原Base64Utils本质是对JDK Base64实现的封装,迁移后功能完全一致,不会影响业务逻辑。

内容的提问来源于stack exchange,提问作者Peter Penzov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 05:48:22