From 2b6326ca94dc732a1ecfd804e160e09aa425e35b Mon Sep 17 00:00:00 2001 From: Looly Date: Sat, 20 Apr 2024 16:52:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DTemporalAccessorConverter?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=A0=BC=E5=BC=8F=E8=BD=AC=E6=8D=A2?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + .../impl/TemporalAccessorConverter.java | 53 ++++++++++++++----- 2 files changed, 41 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 692e88ddf..54b8d0b62 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ * 【core 】 解决CalendarUtil.isSameDay时区不同导致结果错误问题(pr#3548@Github) * 【core 】 修复RandomUtil.randomStringWithoutStr方法问题(pr#1209@Gitee) * 【http 】 修复HttpRequest.header相同key被覆盖问题(issue#I9I61C@Gitee) +* 【core 】 修复TemporalAccessorConverter自定义格式转换问题(issue#I9HQQE@Gitee) ------------------------------------------------------------------------------------------------------------- # 5.8.27(2024-03-29) diff --git a/hutool-core/src/main/java/cn/hutool/core/convert/impl/TemporalAccessorConverter.java b/hutool-core/src/main/java/cn/hutool/core/convert/impl/TemporalAccessorConverter.java index 55a0d2ff9..3eb59fb4d 100644 --- a/hutool-core/src/main/java/cn/hutool/core/convert/impl/TemporalAccessorConverter.java +++ b/hutool-core/src/main/java/cn/hutool/core/convert/impl/TemporalAccessorConverter.java @@ -117,7 +117,7 @@ public class TemporalAccessorConverter extends AbstractConverter targetClass, final CharSequence value, final DateTimeFormatter formatter) { + // issue#I9HQQE + if (LocalDate.class == targetClass) { + return LocalDate.parse(value, formatter); + } else if (LocalDateTime.class == targetClass) { + return LocalDateTime.parse(value, formatter); + } else if (LocalTime.class == targetClass) { + return LocalTime.parse(value, formatter); + } + return null; + } + /** * 将Long型时间戳转换为java.time中的对象 * @@ -169,20 +196,20 @@ public class TemporalAccessorConverter extends AbstractConverter