Sterowniki Mongodb + Java. Wyszukaj według zakresu dat

To jest mój pierwszy strzał w używanie Mongodba ze sterownikami java. Mogę odpytywać bazę danych za pomocą wiersza poleceń za pomocą javascript i obiektu Date (), jednak mam problemy z używaniem sterownika. Na podstawie mojego zapytania, czy ktoś może zobaczyć, na czym polega problem? Dzięki

            Date current = new Date();
            DBCollection coll = db.getCollection("messages");

            BasicDBObject query = new BasicDBObject("created_on", new BasicDBObject("$gte", new Date(current.getYear(), current.getMonth(), current.getDate())).
                    append("created_on", new BasicDBObject("$lt", new Date(current.getYear(), current.getMonth() - 1, current.getDate()))));

            System.out.println("Query: " + query);


            DBCursor cursor = coll.find(query);

Zapytanie: {"created_on": {"$ gte": {"$ date": "2012-12-06T05: 00: 00.000Z"}, "created_on": {"$ lt": {"$ date": " 2012-11-06T05: 00: 00.000Z "}}}}

P.S. W przypadku, gdy nie jest to oczywiste, staram się znaleźć wszystkie rekordy w ciągu ostatniego miesiąca.

questionAnswers(4)

yourAnswerToTheQuestion