MongoDB - Сохранить и обновить [дублировать]

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

-2
задан Punit Goel 14 April 2019 в 12:08
поделиться

1 ответ

Это не вносит существенного изменения в производительности. Причины как ниже

, Когда Вы сохраняете или обновляете документ в mongodb, Вы, вероятно, решаете звонить, сохраняют или обновляют из другого приложения, которое могло быть записано в C#, Java, JavaScript, PHP или someother языке.

В этом случае, существует коммуникация процесса Интера (или сетевой вызов, если Вы дб монго работаете в другой машине). По сравнению с этим разница во времени берет, чтобы выборочно заменить документ обновлением и полностью заменить документ сохранением, незначительно. Между прочим, сохраните и обновите, у обоих, вероятно, будет сложность времени выполнения O (n), если не будет никаких индексов.

Для документа с 250 полями, размер документа является, вероятно, не слишком большим, который мы должны рассмотреть. Если размер документа обновления значительно меньше что размер сохранять документа, то используйте обновление.

Еще используют сохранение/обновление в зависимости от, который более изящен в клиентском коде.

0
ответ дан Nachiappan Kumarappan 14 April 2019 в 12:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: