MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Spring-Boot:MongoDB-Datumsvergleich funktioniert nicht

Sie müssen die Zeitzone auf UTC setzen, wenn Sie DateFormat verwenden zum Analysieren von Datumsangaben.

Alternativ können Sie Instant verwenden in Java 8.

Ich habe beide Beispiele gezeigt.

endDate mit dateFormatter mit eingestellter Zeitzone auf UTC

startDate mit Instant

So etwas wie

DateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS\'Z\'");
dateFormatter.setTimeZone(TimeZone.getTimeZone("UTC"));

Date startDate,endDate;

startDate =  Date.from(Instant.parse("2017-10-06T00:00:00.000Z"));
endDate = dateFormatter.parse("2017-10-07T23:00:00.000Z");