# 更新日志 所有 notable changes 将记录在此文件中。 格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/), 版本号遵循 [Semantic Versioning](https://semver.org/lang/zh-CN/)。 ## [Unreleased] ### Fixed - 代码质量全量审计修复 (2026-05-16) - **[Blocker#1]** RSA.java: switch 表达式 → if-else(jre8/jre11 兼容) - **[Blocker#2]** JwtUtil.java: `var` → 显式类型 + `instace()` → `instance()` 拼写修正 - **[Blocker#3]** RequestHeader.java: `geRespTime()` → `getRespTime()` 拼写修正 - **[Blocker#4-5]** ImgUtil/FileUtil: `connectBytes()` 数组拷贝参数 Bug 修正 - **[Blocker#6]** ObjUtil.java: `System.out.println` → 日志框架 - **[Major]** DateTimeUtil.java: 30+ 方法补全 @param/@return Javadoc - **[Major]** FileInput.java: 12 方法 Javadoc + Scanner 改 try-with-resources - **[Major]** AlgorithmUtil.java: Javadoc 规范化 + StringBuffer→StringBuilder - **[Major]** MoneyUtil.java: Javadoc 补全 + toFen() 返回类型 int→long 防溢出 - **[Major]** FileUtil/JsonUtil/SysUtil: 日志统一、异常处理改进、线程安全优化 - **[Major]** 全部常量类 DateConsts/SymbolicConsts/RespConsts 注释补全 - **[Minor]** BaseVO: serialVersionUID @Serial + Mdfy→Modify(@Deprecated 过渡) - **⚠️ 破坏性变更**: `JwtUtil.instace()→instance()`, `.geRespTime()→getRespTime()`, `MoneyUtil.toFen()` 返回值 long ### Added - 添加 JaCoCo 代码覆盖率插件(目标 60%) - 添加 Checkstyle 代码规范检查(Google Style) - 添加 PMD 静态代码分析 - 添加 CONTRIBUTING.md 贡献指南 - 添加 CODE_OF_CONDUCT.md 行为准则 - 添加 SECURITY.md 安全政策 - CsvUtil 新增 Bean 转 CSV 数据行功能(`beanToCsvData()`) ### Security - [P0] AES CBC 模式使用随机 IV(S3) - [P0] AES getKey/getIv 返回副本并标记 @Deprecated(S1/S2) - [P0] 移除异常消息中的敏感数据(S6) - [P0] 统一 Jackson 版本,排除 jjwt 传递依赖 ## [1.6.0-jre21] - 2026-04-16 ### Added - 三个分支(jre8/jre11/jre21)架构对齐,统一类命名 - jre8 分支移植 jre11/jre21 新增功能(DES3、BaseException、MsgUtil、ZipUtil 等 15 个文件) - 新增 `@ToUeProperty` 注解支持 ignore 属性 - 新增 MsgUtil 多语言消息工具(ServiceLoader SPI 机制) - 新增 ZipUtil ZIP 压缩工具(基于 zip4j) - 新增 FileInput 文件读取 POJO - 新增统一的 Response 体系(BasicResponse/ListResponse/ObjectResponse/SignRequest/SignResponse) - 新增单元测试(加密模块、异常模块、工具类测试) - 新增 8 个模块功能说明文档(`doc/`) - 新增 14 个功能改善建议文档(`upgrades/`) - 新增 FEATURE_LIST.md 三分支功能对比列表 - 新增 MIT 开源协议 ### Changed - jre8 废弃移除旧架构文件(ThreeDES、RespsConsts、Resps、ApiVO、ParamsPO) - 重写 README.md(功能模块总览、多版本使用指引、分支说明) ## [1.5.7-jre11] - 2024-XX-XX ### Changed - 优化 AES、DES3 和 RSA 加密实现并增强安全性 ## [1.5.6-jre11] - 2024-XX-XX ### Changed - 优化 response vo - 单元测试完善 ## [1.5.5-jre11] - 2024-XX-XX ### Added - 删除 ApiVO,新增 BasicResponse/ObjectResponse/ListResponse 处理返回参数 - DateConsts 增加常量 ### Changed - 优化常量命名 ## [1.5.4-jre11] - 2024-XX-XX ### Changed - 优化 RSA 加签验签部分 ## [1.5.3-jre11] - 2024-XX-XX ### Added - RSA 增加枚举(SignAlgorithm) ### Changed - 依赖库升级 ## [1.5.2-jre11] - 2024-XX-XX ### Added - FileInput 从 FileUtil 中提取为独立 POJO - StrUtil 增加异常堆栈转字符串方法 `printStackTrace` ### Changed - 升级相关依赖 ## [1.5.1-jre11] - 2024-XX-XX ### Added - RSA 支持传入已初始化密钥对,避免重复生成 - RSA 支持证书模式(从证书文件加载公钥/私钥) ### Changed - 优化 RSA 密钥生成逻辑 ## [1.5.0-jre11] - 2024-XX-XX ### Added - 新增 RSA2 工具类(支持更灵活的密钥管理) - 新增 DES3 工具类(三重 DES 加密) - 新增多种加密模式支持(CBC/GCM/CFB/OFB/PCBC) ### Changed - 重构加密模块架构 - 优化异常处理机制 ## [1.4.0-jre8] - 2023-XX-XX ### Added - 初始版本发布 - 基础工具类(StrUtil、DateUtil、FileUtil 等) - AES/DES 加密支持 - JSON 处理工具(基于 Jackson) --- ## 版本说明 ### 版本号格式 `主版本号.次版本号.修订号-分支标识` 示例:`1.6.0-jre21` ### 分支对应关系 | 分支 | Java 版本 | 说明 | |------|-----------|------| | jre21 | Java 21+ | 主开发分支,包含最新特性 | | jre17 | Java 17+ | LTS 版本支持 | | jre11 | Java 11+ | LTS 版本支持 | | jre8 | Java 8+ | 兼容旧项目 | ### 更新类型 - **Added**: 新功能 - **Changed**: 功能变更 - **Deprecated**: 已废弃功能 - **Removed**: 已移除功能 - **Fixed**: 问题修复 - **Security**: 安全修复