Basis DBobject is niet verouderd. Het enige verouderde onderdeel in het BasicDBobject is DBPointer
class en enkele andere methoden zoals toString() and getId()
Document implementeert Map<String, Object>
en er is minder code om te schrijven vergeleken met het Basic DB-object
DBObject Hoewel niet aanbevolen voor nieuwe toepassingen, kunnen degenen die upgraden van de 2.x-stuurprogrammareeks de DBObject-interface blijven gebruiken om BSON-documenten weer te geven. DBObject lijkt op Document in die zin dat het BSON-waarden vertegenwoordigt als Object, maar het heeft een paar tekortkomingen die onmogelijk te verhelpen waren:
-
het is een interface in plaats van een klasse, dus de API kan niet worden uitgebreid zonder de binaire compatibiliteit te verbreken.
-
Het implementeert Map niet echt.
-
Omdat het een interface is, is een aparte concrete klasse genaamd BasicDBObject vereist die die interface implementeert
Bson Om deze allemaal met elkaar te verbinden, bevat de driver een kleine maar krachtige interface genaamd Bson. Elke klasse die een BSON-document vertegenwoordigt, ongeacht of deze is opgenomen in het stuurprogramma zelf of van een derde partij, kan deze interface implementeren en kan vervolgens worden gebruikt op elke plaats in de API op hoog niveau waar een BSON-document vereist is.