簡體   English   中英

objectmapper.readvalue自動更改時區

[英]objectmapper.readvalue automatically change the timezone

我從前端發送日期,如下格式的字符串。

[{“ StartDate”:“ 2018-03-09”}]

在春季,我正在使用ObjectMapper在POJO中獲得此功能。 使用ObjectMapper.readValue時將轉換為以下日期。

星期五2018年3月9日05:30:00

我已經嘗試過下面的代碼。

ObjectMapper objectMapper = new ObjectMapper().setTimeZone(TimeZone.getTimeZone("UTC"));

但是它對我不起作用。 仍將IST 2018年5月9日星期五05:30:00作為輸出。

如何使代碼獨立於時區。

您正在將字符串日期映射到Date對象。 沒有時區的日期對象是不可能的。 映射器正確地應用了UTC時區,並且日期存儲為2018-03-09 00:00:00 UTC 2018-03-09 05:30:00 IST 2018-03-09 00:00:00 UTC並且IST成為2018-03-09 05:30:00 IST 如果您想要2018-03-09 00:00:00 IST時間2018-03-09 00:00:00 IST而不是UTC ,請傳遞IST

如果您希望發送不帶時區的日期,則可以使用如下所示的注釋進行操作(要求json-jackson版本> = 2.0)

@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone="Asia/Kolkata")
private Date date;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM