MongoDB Java — синтаксический анализ JSON через com.mongodb.util.JSON.parse

#java #json #mongodb

#java #json #mongodb

Вопрос:

Я использую com.mongodb.util.JSON.parse для анализа файла JSON в DBObject. Как мне указать даты, ссылки и идентификаторы объектов в файле JSON?

Ответ №1:

Даты: { myDate: {$date: "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" } } // Дата в указанном формате строки ISODate.

Ссылки: { myRef : { $ref : <collname>, $id : <idvalue>[, $db : <dbname>] } } // collname — это имя коллекции, idvalue — это _id документа, на который ссылается документ, и, необязательно, dbname — это база данных, в которой находится документ.

Идентификаторы объектов : { _id : {$oid: "4e942f36de3eda51d5a7436c"} }

Комментарии:

1. Не могли бы вы объяснить, что вы подразумеваете под анализируемой строкой?

2. Какая-либо конкретная причина, по которой вы не согласны. Приведенная выше информация является точной.

3. Извините, я хотел продолжить. Я принял ответ, но столкнулся с проблемой. Библиотека Java ожидает, что данные будут в формате даты ISO (в виде строки), а не в виде длины, как указано выше. Когда я использую длинный формат, я получаю исключение для синтаксического анализа JSON.

4. @jeffreyveon. Ах, да, мои извинения. Метод JSON.parse ожидает дату в виде строки в формате «гггг-ММ-dd’T’HH: mm: ss.SSS’Z'». Я отредактирую свой ответ