дата в MongoDB :при вставке объектов Date в базу данных Mongo дата становится на 1 день раньше, чем сама

Мой формат строки даты такой:2 января 2012 г. После метода Instant.parse ()мгновенный экземпляр становится датой 1 января 2012 г., что на 1 день раньше, почему? Если исходная строка даты — 1 января 2012 г., Instant будет датой 31 декабря 2011 г.

String dateString="Jan 1, 2012";
Instant instant = Instant.parse(dateString, new DateTimeFormatterBuilder()
.appendMonthOfYearShortText()
.appendLiteral(" ")
.appendDayOfMonth(1)
.appendLiteral(", ")
.appendYear(4, 4)
.toFormatter());

DateTime dateTime = new DateTime(instant);
Date date = new Date(dateTime.getMillis());

document.append("time", new Date(dateTime.getMillis()));
tagsDbCollection.insert(document);

Я использую MongoDB для хранения этих дат. Я тестировал, и это показывает, что при форматировании строки даты -> мгновенно нет ошибки. Но когда я вставляю этот объект типа Date в MongoDB, строка даты в MongoDB становится на 1 день раньше. Почему?

В MongoDB:

 /* 0 */
    {
      "_id" : ObjectId("50221a40da74d74053abb445"),
      "time" : ISODate("2011-12-31T14:00:00Z")
    }
8
задан Tyler 十三将士归玉门 8 August 2012 в 08:07
поделиться