Files
yexuejc f7f1e59aea docs: 添加代码质量全量修复报告 + 更新CHANGELOG
- 新增 代码质量全量修复报告.md(含4分支验证矩阵+兼容性详情)
- CHANGELOG 记录全部 Blocker/Major/Minor 修复项
- 标注破坏性变更
2026-05-16 00:44:10 +08:00

157 lines
4.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 更新日志
所有 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**: 安全修复