字符串到 LocalDate 转换问题

问题描述 投票:0回答:2

我有一个带有 JPA 2.2 和 Hibernate 5 的 SpringBoot 2.6.14 Web 应用程序。

现在我有一个这种格式的字符串

"2024-03-04T14:10:37.000Z"

并且,按照一些指令(谷歌搜索),我将以下字符串写入 LocalData 转换器:

default LocalDate stringToDate(String data) {
    if (data == null || data.isEmpty()) return null;
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
    formatter = formatter.withLocale(Locale.getDefault());
    return LocalDate.parse(data, formatter);
}

解析有效,但结果是 2024-03-04,小时、分钟和秒被截断。 怎么了?

java date-conversion localdate
2个回答
0
投票

a

LocalDate
仅包含年月日。如果您想要时间值,请使用
LocalDateTime


0
投票

LocalDate
不包括时间。考虑使用
LocalDateTime
代替。

return LocalDateTime.parse(data, formatter);
© www.soinside.com 2019 - 2024. All rights reserved.