v2.0.2
v2.0.2(20260731)
Note
sz-boot-parent
新增
- 新增 Java 21 / Java 25 LTS 双版本兼容矩阵;Java 21 继续作为默认和最低基线,使用 Java 25 构建时仍通过
--release 21产出 Java 21 字节码。
重构与优化
- Spring Boot 升级至
4.1.0,Jackson 升级至3.2.1,MyBatis-Flex 升级至1.11.8。 - 同步升级 MyBatis Spring、MySQL Connector/J、PostgreSQL JDBC Driver、HikariCP、Apache POI、AWS CRT、Commons IO 等依赖。
- yauaa 升级至
8.1.1,降低 Windows 安全软件对旧依赖的误报干扰。 - 优化后端 Docker 构建:同一 JAR 分别构建 Java 21 / 25 镜像,校验运行时版本和镜像内 JAR 哈希;PR 仅构建验证,不推送镜像。
修复
- 修复 WebSocket 独立服务无法反序列化后台业务 DTO 导致消息发送失败的问题;消息数据改为可跨服务传输的通用
Map结构。 - 修复滑块验证码使用前端时间戳导致误报“验证过快”的问题,校验耗时改由服务端生成时间计算。
- 修复同一终端连续获取验证码时旧校验数据被覆盖的问题;每次生成独立
requestId,同时保留 IP + User-Agent 维度的请求限流。 - 补齐滑块验证码缺失 IV 校验,并将非法密文和 AES-GCM 解密失败统一转换为验证码验证失败,避免加密异常直接暴露为服务端错误。
- 修复生产配置缺少
router.whitelist时拦截器注册发生空指针异常的问题;白名单属性默认初始化为空集合。
sz-admin
重构与优化
- 升级前端运行与构建依赖:Axios
1.18.0、Vite7.3.5、TypeScript5.9.3、vue-tsc3.3.8、ESLint10.8.0、VueUse14.4.0等。 - 更新 pnpm overrides,收口 Babel、form-data、js-yaml、brace-expansion、PostCSS、micromatch、shell-quote、esbuild 等传递依赖版本。
- 调整 tabs store 中 keep-alive store 的初始化时机,避免在 Pinia 激活前访问 store。
- 同步适配依赖升级后的组件类型、属性和模板写法。
修复
- WebSocket 消息通知同时兼容对象 payload 和历史字符串 payload,修复后端跨服务消息结构调整后的前端解析问题。
- 滑块验证码不再提交客户端
startTime,与后端服务端计时契约保持一致。
升级影响
- 自定义 WebSocket 客户端应把
MESSAGE.data按对象处理;如需兼容旧后端,可同时支持 JSON 字符串。 - 自定义验证码前端应始终提交本次
/captcha/get返回的requestId,不要复用旧验证码标识,也不要再依赖客户端startTime。 - 前端依赖和锁文件变化较大,升级后应使用 pnpm
10.17.1重新安装依赖,并执行pnpm run type-check与pnpm run build。