Я новичок в mongodb и просматриваю учебник для Java и Mongodb. Я заметил, что есть put() и append() для BasicDBObject, и я взглянул на API, put() inherit и append() является встроенным в BasicDBObject. Кто-нибудь другой, например, скорость доступа? Спасибо!
API-интерфейс MongoDB Java: put() vs append()
Ответ 1
public BasicDBObject append( String key , Object val ){
put( key , val );
return this;
}
put()
возвращает предыдущее значение, если это применимо. append()
вызывает put()
внутренне и возвращает экземпляр BasicDBObject. По существу, append()
- это более свободный интерфейс для put()
. Это позволяет вам сделать что-то вроде этого:
BasicDBObject o = new BasicDBObject().append("One", 1).append("Two", 2).append("Three", 3);
Что касается производительности, JVM предположительно будет встроенными методами, такими как append()
, если они используются достаточно часто где-то. Однако из моего опыта и довольно много профилирования это не всегда верно, и вы должны немного ускориться, используя put()
напрямую и сохраняя JVM догадки.
Тем не менее, читаемость кода всегда должна быть приоритетом. Просто напишите свой код, когда вам будет комфортно, и сравните его с профилем, чтобы найти возможные оптимизации. Преждевременная оптимизация - это соблазн, которого следует избегать любой ценой...