我不明白如何以特定格式在MongoDB中保存例如「eventDateFrom」的日期和時間。以特定格式彈出數據保存日期和時間
我嘗試那樣做:
事件類的部分: 公共類的事件{RunAtStart類
@Id
private String id;
private String eventTitle;
@DateTimeFormat(pattern = "MM/dd/yyyy HH:mm:ss")
private Date eventDateFrom;
private String eventDateTo;
private Integer minEventPartcipants;
private String eventDateConfirmTo;
private String location;
private String minEventTime;
private List<Participant> participantList = new ArrayList<>();
部分:
Event event = new Event();
event.setEventTitle("Wyjazd na rower Turbacz");
event.setEventDateFrom(new Date("05/27/2017 10:00:00"));
event.setEventDateTo("27.05.2017 22:00:00");
event.setMinEventPartcipants(2);
event.setEventDateConfirmTo("26.05.2017 10:00:00");
event.setLocation("Lindego 13a");
event.setMinEventTime("06:00:00");
但是時間 「eventDateFrom」是錯的。
MongoDB的文件:
{
"_id" : ObjectId("592d34dcc5f2fd2d204d7db4"),
"_class" : "info.wzielezicki.app.MeetHelp.model.Event",
"eventTitle" : "Wyjazd na rower Turbacz",
"eventDateFrom" : ISODate("2017-05-27T08:00:00.000Z"),
"eventDateTo" : "27.05.2017 22:00:00",
"minEventPartcipants" : 2,
"eventDateConfirmTo" : "26.05.2017 10:00:00",
"location" : "Lindego 13a",
"minEventTime" : "06:00:00",
"participantList" : []
}
- 我做錯了嗎?
- 定義日期和時間格式是更好的方法嗎?
1.您正在使用字符串。 2.是的,有更好的方法,請使用BSON日期。你在Java中提供'java.util.Date'。參見[如何在mongo中插入帶有日期的文檔?](https://stackoverflow.com/questions/24483727/how-to-insert-a-document-with-date-in-mongo) –
看起來像時區問題。這篇文章可能會有所幫助:https://stackoverflow.com/questions/2891361/how-to-set-time-zone-of-a-java-util-date – jvwilge
@jvwilge我使用了@DateTimeFormat(pattern =「MM/(「UTC」));'現在在MongoDB中的eventDateFrom是'「eventDateFrom」:ISODate(「2017-05/dd/yyyy HH:mm:ss」) private date DateDateFrom;'TimeZone.setDefault(TimeZone.getTimeZone 27T10:00:00.000Z「)'你怎麼看,這是正確的溶出 – jocom