2014-01-27 11 views

ответ

0

Прежде всего MongoDB генерирует ObjectID("507f191e810c1972xxxxx") самостоятельно (если вы его не установили). Как указано в документе docs:

Все документы MongoDB должны иметь поле _id с уникальным значением. В этих операциях явно не указано значение для поля _id, поэтому mongo создает уникальное значение ObjectId для поля, прежде чем вставлять его в коллекцию.

В данной статье ObjectID описана спецификация BSON ObjectID. Формат включает:

  1. TimeStamp. Это временная метка стиля unix. Это подписанный int, представляющий количество секунд до или после 1 января 1970 года (UTC).
  2. Машина. Это первые три байта (md5) хэша имени машинного узла или адреса mac/network или виртуального .
  3. Pid. Это 2 байта идентификатора процесса (или идентификатора потока) процесса, генерирующего идентификатор объекта.
  4. Приращение. Это постоянно увеличивающееся значение или случайное число, если счетчик не может использоваться в языке/времени выполнения.

Сам сервер и почти все драйверы используют формат выше.

После успешного введения _id который держит ObjectID("507f191e810c1972xxxxx") возвращается большинство водителей.


Первичный ключ & Индекс: _id поле зарезервировано для первичного ключа в MongoDB, и это должно быть уникальное значение. Если вы ничего не устанавливаете в _id, он автоматически генерирует ObjectID("507f191e810c1972xxxxx"), как указано выше.

MongoDB создает индекс _id по умолчанию, который является уникальным индексом поля _id. MongoDB создает этот индекс по умолчанию для всех коллекций. Вы не можете удалить индекс на _id. Для получения дополнительной информации здесь link

-1

Есть много библиотек JSON, которые можно использовать для этого, например, gson Google: https://code.google.com/p/google-gson/ после добавления файла JAR Вы можете использовать метод метода fromJson для получения объекта. http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html

+1

, пожалуйста, укажите правильный ответ. Есть ли способ найти идентификатор строки json – chopu

+0

, если ваш тип имеет идентификатор в качестве свойства, вы используете метод fromJSON, и вы получаете свой объект, затем используйте точечную нотацию, чтобы получить свой идентификатор – Tal87

Смежные вопросы