从数据库

时间:2018-06-14 18:42:51

标签: mysql timezone jodatime

我在请求中收到一个DateTime,我在POST / PUT调用期间将其存储在DB中。在GET调用中再次获取此数据。但是请求中传递的DateTime值,存储在DB中的值和在GET调用中获取的值都是不同的。 这是我的POST请求正文:

{
"firstName": "first",
"lastName": "last",
"login": "2018-02-15T11:03:14.564Z"
}

这是我的POJO请求。

@Data
@Builder
@AllArgsConstructor
public class User {

    @JsonProperty
    private int id;
    @JsonProperty
    private String firstName;
    @JsonProperty
    private String lastName;
    @JsonProperty
    private DateTime login;
}

我的数据库列是ID(int),FIRSTNAME和LASTNAME(varchar),以及登录(时间戳)

以下是存储在DB中的内容:

  

14 first last 2018-02-15 16:33:15

如您所见,它将5:30添加到存储在DB中的值。 在做GET通话时,我得到了

{
"id": 14,
"firstName": "first",
"lastName": "last",
"login": "2018-02-14T18:30:00.000Z"
}

这里检索的时间是2018-02-15减去5:30(它甚至没有选择11:03或16:33)。我在这里错过了什么吗? 当我发送尸体进行POST时:

{
"firstName": "fisrt2",
"lastName": "last2",
"login": "2018-02-15T11:03:14.564+05:30"
}

存储在db中的值是正确的。

  

15 fisrt2 last2 2018-02-15 11:03:15

但是对get的检索又错了。
PS:我的时区IST = GMT + 5:30。我的db是mysql。

0 个答案:

没有答案