Mongodb de marca de hora del formato de salida vuelve objeto "$ numberLong" cuando quiero obtener el tiempo Unix en Millis

Medtech:

I desarrollar una aplicación que ahorra primavera JSON en MongoDB. El cliente es capaz de buscar datos con la participación en un intervalo de tiempo de empezar y terminar. Para poder utilizar expresiones regulares (LTE y GTE) para obtener los datos de la base de datos ahorro el tiempo como UnixTimeStamp:

 "TimeStamp": {
                "StartTime": 1549371540000,
                "EndTime" : 1549371540000,
                "StartTimeZone":"Europe/Berlin",
                "EndTimeZone":"Europe/Berlin"
            }

Las obras de filtrado, pero me sale el siguiente como consecuencia:

"TimeStamp": {
                    "StartTimeZone": "Europe/Berlin",
                    "EndTimeZone": "Europe/Berlin",
                    "EndTime": {
                        "$numberLong": "1549371540000"
                    },
                    "StartTime": {
                        "$numberLong": "1549371540000"
                    }
                }

¿Es posible obtener sólo el par clave-valor en lugar del objeto Hora de inicio con la tecla $ numberLong? Yo también estaba pensando en el ahorro de tiempo aso formato ISO con yyyy_mm_ddTHH: MM: SS + -offset

Pero por lo que sé que puedo simplemente la expresión regular para filtrar el tiempo en este formato. Tratar con el tiempo es una parte esencial del proyecto y quiero hacer Shure que trato esta parte de la mejor manera práctica.

EDIT: En mi código I

for (Document doc : collection.find(query).projection(Projections.include(projectionList))) {
            //Save the query result as a List of JSON-Objects
            dataList.add(doc.toJson());
        }

guardar los resultados como una lista de jsons. Sé que el método toJson está en desuso pero no fue capaz de encontrar una manera de convertir el documento en una notación JSON.

Vijay Rajpurohit:

¿Es posible obtener sólo el par clave-valor en lugar del objeto Hora de inicio con la tecla $ numberLong?

JsonWriterSettings settings = JsonWriterSettings.builder()
        .int64Converter((value, writer) -> writer.writeNumber(value.toString())).build();

document.toJson(settings); // The output would contain simple long value

Sé que es obsoleto el método toJson

Método @medTech toJson no está en desuso por favor consulte la documentación oficial del documento aquí . Además, para JSON ajustes escritor en el enlace.

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=316134&siteId=1
Recomendado
Clasificación