【问题标题】:Setting timezone = "Asia/Kolkata" in @jsonformat and storing it in java.sql.timestamp converts 12 pm to 1 pm timesatmp to 00 am in spring hibernate在@jsonformat 中设置 timezone = "Asia/Kolkata" 并将其存储在 java.sql.timestamp 中将 12 pm 转换为 1 pm 时间atmp 到 00 am 在春季休眠
【发布时间】:2021-10-25 08:41:49
【问题描述】:

我正在使用

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd-MM-yyyy hh:mm:ss", timezone = "Asia/Kolkata")
private Timestamp startDateTime;

存储时间戳以 json 字符串形式出现。 但问题是它将 12 pm 到 1 pm 之间的时间转换为 00 am。 例如。 2021-10-25 12:30:00 转换为 2021-10-25 00:30:00。 任何帮助将不胜感激。 谢谢。

【问题讨论】:

    标签: spring-data-jpa timezone timestamp-with-timezone sql-timestamp


    【解决方案1】:

    问题的根本原因是您使用了h 而不是H。请注意,h 用于 12 小时时间格式(即带有 AM/PM 标记的时间),而H 用于 24 小时时间格式。所以,解决您的问题的方法是将格式更改为dd-MM-yyyy HH:mm:ss

    如果您想要时间中的 AM/PM 标记,请将格式更改为 dd-MM-yyyy hh:mm:ss a

    【讨论】:

    • 这正是对我有帮助的解决方案。非常感谢。
    猜你喜欢
    • 2018-01-21
    • 2011-12-29
    • 1970-01-01
    • 2021-03-06
    • 2014-12-31
    • 2019-10-07
    • 2012-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多