首页 > 解决方案 > Javascript 和 Java 中的日期(春季启动)

问题描述

我已经阅读了很多关于这个主题的帖子,但我仍然有一些问题

首先我从 html 输入标签中得到一个日期输入(28/09/2019),我们称之为aDate

<input name="ExpireDate" ng-model="personalDetail.ExpireDate" type="date">

在Javascript中

console.log(aDate)Sat Sep 28 2019 00:00:00 GMT+1000 (Australian Eastern Standard Time)

console.log(aDate.toISOString())2019-09-27T14:00:00.000Z

我知道它们都是正确的,因为第一个是 UTC+10 时间,第二个是 UTC+0 时间

然后我传递aDate给一个spring boot应用程序,它显示2019-09-27T14:00:00.000Z如果我将LocalDate其解析为(postgresql支持)它将丢失T14:00:00.000Z部分

然后,如果我尝试将LocalDate 2019-09-27Java转换为DateJavascript,则日期现在是休息一天。

我当前的解决方案是使用LocalDateTime而不是LocalDate,它有效,但我真的不想将该时间信息存储在数据库中

有没有办法摆脱 Javascript 中的时间信息Date?或解决此问题的任何其他解决方案

另一个奇怪的事情是为什么我type="date"在 html 输入标签中指定,它仍然给我日期时间数据?

更新:

LocalDateTime不工作

转化2019-09-27T14:00:00.000ZLocalDateTime收益率2019-09-27T14:00

但在 Javascript 中将new Date('2019-09-27T14:00')其视为本地时间并产生

"Fri Sep 27 2019 14:00:00 GMT+1000 (Australian Eastern Standard Time)"
"2019-09-27T04:00:00.000Z"

标签: javascriptjavadate

解决方案


推荐阅读