|
e2e5f50162
|
refactor: AssertTools 类中的方法使用静态导入
|
2025-06-12 16:11:53 +08:00 |
|
|
8eac9054cd
|
refactor(gson): 重构 JSR310TypeAdapters
- 抽象出 TemporalAccessorTypeAdapter 类,简化了 LocalDate、LocalDateTime、ZonedDateTime 和 Instant 类型适配器的实现
|
2025-06-09 17:55:25 +08:00 |
|
|
a55c712349
|
test: 使用 JSR310TypeAdapters 简化测试代码
|
2025-06-09 17:21:26 +08:00 |
|
|
0eda94a658
|
refactor(exception): 为异常类添加 serialVersionUID
为以下异常类添加 serialVersionUID 字段:
- ParsingFailureException
- BizException
- InvalidInputException
- RequestParamsException
- DataOperationResultException
- SysException
|
2025-06-09 17:05:10 +08:00 |
|
|
c816696c55
|
docs: 改正 ParsingFailureException 文档注释中的错误描述
|
2025-06-09 16:14:44 +08:00 |
|
|
8828b12c78
|
release: 1.1.0-RC1
1.1.0-RC1
|
2025-06-08 13:38:03 +08:00 |
|
|
89acbecc5a
|
docs: 修改 javadoc 中的格式错误
|
2025-06-08 13:08:45 +08:00 |
|
|
336d99d4ba
|
feat(gson): 添加 Gson 适配器以支持 JSR-310 中常用的类
Reviewed-on: #57
|
2025-06-07 01:02:15 +08:00 |
|
|
0731bf2c22
|
refactor(gson): 合并多个 JSR-310 类型适配器到 JSR310TypeAdapters 中
- 将 InstantTypeAdapter、LocalDateTimeTypeAdapter、LocalDateTypeAdapter 和 ZonedDateTimeTypeAdapter 合并到 JSR310TypeAdapters 类中
- 更新包结构,移动适配器到 adapter 子包
- 新增相关包的 javadoc
|
2025-06-07 00:56:11 +08:00 |
|
|
2827f69aef
|
feat(gson): 新增 InstantTypeAdapter 用于 Gson 序列化和反序列化 Instant
`InstantTypeAdapter` 用于 Gson 通过 `DateTimeFormatter#ISO_INSTANT` 序列化和反序列化 `Instant` 类型。
|
2025-06-07 00:22:04 +08:00 |
|
|
2e73ca5f6d
|
feat(gson): 添加 Gson 适配器以支持 Java 8 日期时间 API
- 新增 `LocalDateTimeTypeAdapter`、`LocalDateTypeAdapter` 和 `ZonedDateTimeTypeAdapter`
- 将 Gson 作为可选依赖
|
2025-06-06 19:13:52 +08:00 |
|
|
1239a11cd7
|
refactor: 优化 UnifiedResponses 工厂方法的泛型定义
将不指定 data 的工厂方法也改成泛型方法,而不是返回 `UnifiedResponse<Void>`。
|
2025-06-06 11:40:20 +08:00 |
|
|
f8a2046d2d
|
refactor!: 将 RegexTools 的 matchesOne 方法重命名为 matchesAny
|
2025-06-04 17:12:29 +08:00 |
|
|
fb2036c038
|
build: 升级 logback 到 1.3.15
logback 1.3.x 是最后一个支持 JDK8 的版本。
如果使用 Spring Boot,建议使用 Spring Boot 绑定的版本,但是 Spring Boot 2.7.x 最高只支持 logback 1.2.x,所以不可避免使用的有漏洞的版本。
|
2025-05-28 21:14:27 +08:00 |
|
|
f9b4c3c58c
|
feat: 新增 StringTools#toQuotedString 方法
|
2025-05-18 15:18:52 +08:00 |
|
|
3ca2ec3be0
|
build: 简化依赖声明
|
2025-05-14 10:42:06 +08:00 |
|
|
f83bb55fd6
|
refactor!: 重构 DataOperationResultException (#56)
删除 `DataOperationResultException` 多余的构造方法,仅提供两个构造方法。
创建 `DataOperationResultException` 实例时,必须将预计影响的行数
和实际影响的行数作为入参。(不兼容)
重构 `AssertTools` 中相关的断言方法。
Reviewed-on: #56
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-05-09 21:45:30 +08:00 |
|
|
e90e3dc1b4
|
fix(dependencies): 改正 jasypt 版本配置
Reviewed-on: #55
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-05-02 17:07:48 +08:00 |
|
|
b774d8c477
|
chore: 更新 Code Spell Checker 的配置
Reviewed-on: #54
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-05-02 15:27:32 +08:00 |
|
|
2a18a47ffe
|
chore: 更新 guava
Reviewed-on: #53
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-05-02 15:09:06 +08:00 |
|
|
cb903a8cce
|
docs: 修改 MultiTypesException 文档描述
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-05-02 14:13:07 +08:00 |
|
|
030ed9ed3b
|
refactor: 更改项目结构
创建父项目 plusone-parent,将 plusone-commons 放在 plusone-parent 下;
在 plusone-parent 下创建 plusone-dependencies,由 plusone-dependencies 管理可能用到的所有依赖。
|
2025-05-02 11:31:57 +08:00 |
|
|
5ce738bdfc
|
docs: 完善 javadoc
|
2025-05-01 03:46:03 +08:00 |
|
|
97a4ae2279
|
perf: RegexTools 的缓存改用 guava cache
|
2025-05-01 02:15:23 +08:00 |
|
|
af66cd2380
|
feat: RegexTools 新增重载方法,当将字符串视为正则表达式入参时,允许传对应的 flags
|
2025-05-01 02:08:23 +08:00 |
|
|
3b519105bf
|
refactor!: 删除 RegexTools 中以 String[] 作为多个正则表达式入参的方法
字符串无法代表一个正则表达式,还需考虑正则表达式的 flag(s),所以当使用多个正则表达式时,更推荐使用 `Pattern[]`。
|
2025-04-30 22:57:47 +08:00 |
|
|
b70e526509
|
docs: 修改段落问题
Signed-off-by: zhouxy108 <luquanlion@outlook.com>
|
2025-04-30 22:47:49 +08:00 |
|
|
a2781012be
|
feat: 在 AssertTools 中新增 checkArgumentNotNull 系列方法
|
2025-04-30 22:44:29 +08:00 |
|
|
9e410029b1
|
refactor: 修改 AssertTools 中的参数名称
|
2025-04-30 22:17:18 +08:00 |
|
|
ee7213a687
|
refactor(util): ArrayTools 中的 isNullOrEmpty 重命名为 isEmpty
保持方法命名的一致性
BREAKING CHANGE: `ArrayTools#isNullOrEmpty` 重命名为 `ArrayTools#isEmpty`
|
2025-04-29 11:26:12 +08:00 |
|
|
45dc105dd0
|
fix: 修复 JDK17+ 环境下测试用例 PagingAndSortingQueryParamsTests#testGson 不通过的问题
该用例在 JDK17+ 环境下使用 gson 进行序列化时,报 `com.google.gson.JsonIOException: Failed making field 'java.time.LocalDateTime#date' accessible; either increase its visibility or write a custom TypeAdapter for its declaring type`。
See: https://github.com/google/gson/blob/main/Troubleshooting.md#reflection-inaccessible
|
2025-04-16 14:52:16 +08:00 |
|
|
c779430e6f
|
chore: 更新依赖
依赖:
- guava: `33.4.0-jre` 更新到 `33.4.2-jre`;
- joda-time: `2.13.0` 更新到 `2.14.0`;
*测试依赖:
- junit: `5.11.4` 更新到 `5.12.1`;
- hutool: `5.8.35` 更新到 `5.8.37`;
- jackson: `2.18.2` 更新到 `2.18.3`;
|
2025-04-16 14:32:12 +08:00 |
|
|
14b193418d
|
docs: fix param name
Reviewed-on: #43
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-04-11 14:42:01 +08:00 |
|
|
56a4a606a6
|
refactor: 优化 OptionalTools 代码
|
2025-04-09 22:11:21 +08:00 |
|
|
7abd3a05ab
|
refactor: UnifiedResponse 的字段为 final
|
2025-04-09 21:45:04 +08:00 |
|
|
a05fc6cfe1
|
style: 格式化代码
|
2025-04-09 21:44:59 +08:00 |
|
|
bca4ce531a
|
chore: 添加 cspell 配置文件
|
2025-04-09 21:41:26 +08:00 |
|
|
4b9c0de860
|
chore: update copyright info (#42)
Reviewed-on: #42
Co-authored-by: ZhouXY108 <luquanlion@outlook.com>
Co-committed-by: ZhouXY108 <luquanlion@outlook.com>
|
2025-04-09 18:16:55 +08:00 |
|
|
0f802db105
|
docs: 完善 javadoc
|
2025-04-09 18:16:54 +08:00 |
|
|
7606a4263c
|
fix: 补充 ThrowingPredicate 缺失的 FunctionalInterface 注解
|
2025-04-09 18:16:54 +08:00 |
|
|
f05e804795
|
chore: ArrayTools 中删除已完成的 TODO 注释
|
2025-04-09 18:16:54 +08:00 |
|
|
36d05045cf
|
refactor!: 限制 PagingAndSortingQueryParams 中用于排序的字段名称的长度,允许包含短横(-)
|
2025-04-09 18:16:54 +08:00 |
|
|
05c30109ec
|
chore: 抑制测试代码的一些警告
|
2025-04-09 18:16:54 +08:00 |
|
|
6f26613f30
|
refactor!: 重命名 ArrayTools 中的方法
`indexOfWithPredicate` 重命名为 `indexOf`,
`lastIndexOfWithPredicate` 重命名为 `lastIndexOf`。
|
2025-04-09 18:16:54 +08:00 |
|
|
9ad82bdb57
|
refactor!: RegexTools 中使用 ArrayTools#isAllElementsNotNull 判断数组
BREAKING CHANGE: 数组为 `null` 时,不抛出 `NullPointerException`,而是 `IllegalArgumentException`。
|
2025-04-09 18:16:54 +08:00 |
|
|
7babf0953a
|
refactor: 重构 Chinese2ndGenIDCardNumber
不使用 ValidatableStringRecord,在工厂方法中进行参数校验。
|
2025-04-09 18:16:54 +08:00 |
|
|
09c6f41610
|
chore: 弃用 ValidatableStringRecord
|
2025-04-09 18:16:54 +08:00 |
|
|
eda835996e
|
refactor: IDCardNumber#toDesensitizedString 使用 StringTools#desensitize 进行脱敏
|
2025-04-09 18:16:54 +08:00 |
|
|
2396b78c4f
|
feat: 新增字符串脱敏方法 StringTools#desensitize
|
2025-04-09 18:16:54 +08:00 |
|
|
6a498c301d
|
docs: 完善 javadoc
|
2025-04-09 18:16:54 +08:00 |
|