Один из методов, который я использую с успехом, заключается в том, чтобы установить значение UUID v4 в ключе с именем firebaseStorageDownloadTokens
в метаданных файла после завершения загрузки, а затем собрать URL-адрес загрузки, следуя структуре Firebase, используемой для создания этих URL, например:
https://firebasestorage.googleapis.com/v0/b/[BUCKET_NAME]/o/[FILE_PATH]?alt=media&token=[THE_TOKEN_YOU_CREATED]
Я не знаю, насколько «безопасно» использовать этот метод (учитывая, что Firebase может изменить способ генерации URL-адресов загрузки в будущем), но это легко реализовать.
Даты MongoDB работают совместно с java.util.Date. Измените свой запрос на что-то вроде этого:
Date start = new java.util.Date(2012, 06, 20, 10, 05);
Date end = new java.util.Date(2012, 06, 20, 10, 30);
BasicDBObject query = new BasicDBObject("Date",
new BasicDBObject("$gt", start)).
append("$lte", end) ));
Вы можете попробовать:
Date gtDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS").parse("2012-06-20T10:05:21.968");
Date lteDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS").parse("2012-09-24T05:29:43.031");
BasicDBObject dateQueryObj = new BasicDBObject("Date", new BasicDBObject("$gt", gtDate).append("$lte", lteDate));
DBCursor cursor = collection.find(dateQueryObj);