后端接收 ZonedDateTime 对象的问题
Problems with ZonedDateTime object receiving on back-end
我遇到了从前端接收日期的问题。
我以 "2020-01-03T00:00:00+02:00"
格式从前端发送日期到后端的 ZonedDateTime
对象。但是我收到的不是 2020-01-03T00:00Z[UTC]
,而是 2020-01-02T22:00Z[UTC]
(实际上减去 2 小时)。
问题:
有没有办法让 ZonedDateTime 库不转换为 UTC,或者不减去时区?
也许任何注释?
控制器和对象简单代码示例
来自前端的对象:
@DIfferentsLombokAnnotations
public class Filters {
private ZonedDateTime startDate;
//Other fields
}
控制器:
@PostMapping("/ggg")
public List<ResponceObject> method(@RequestBody Filters filters) {
//any code
}
ZonedDateTime 仅支持 UTC 或 UTC+2,这可以解释为什么您会得到这样的结果。一种选择是不发送 ZonedDateTime,而是发送 LocalDate、LocalTime、ZoneId 和 ZoneOffset,然后在后端解析为 ZonedDateTime。在一天结束时,一个 ZonedDateTime 已经由这些组件组成。
我遇到了从前端接收日期的问题。
我以 "2020-01-03T00:00:00+02:00"
格式从前端发送日期到后端的 ZonedDateTime
对象。但是我收到的不是 2020-01-03T00:00Z[UTC]
,而是 2020-01-02T22:00Z[UTC]
(实际上减去 2 小时)。
问题:
有没有办法让 ZonedDateTime 库不转换为 UTC,或者不减去时区? 也许任何注释?
控制器和对象简单代码示例
来自前端的对象:
@DIfferentsLombokAnnotations
public class Filters {
private ZonedDateTime startDate;
//Other fields
}
控制器:
@PostMapping("/ggg")
public List<ResponceObject> method(@RequestBody Filters filters) {
//any code
}
ZonedDateTime 仅支持 UTC 或 UTC+2,这可以解释为什么您会得到这样的结果。一种选择是不发送 ZonedDateTime,而是发送 LocalDate、LocalTime、ZoneId 和 ZoneOffset,然后在后端解析为 ZonedDateTime。在一天结束时,一个 ZonedDateTime 已经由这些组件组成。