Basic DBobject er ikke forældet. Den eneste forældede del i BasicDBobjectet er DBPointer
klasse og få andre metoder som toString() and getId()
Dokument implementerer Map<String, Object>
og der er mindre kode at skrive sammenlignet med Basic DB-objekt
DBObject Selvom det ikke anbefales til nye applikationer, kan de, der opgraderer fra 2.x-driverserien, fortsætte med at bruge DBObject-grænsefladen til at repræsentere BSON-dokumenter. DBObject ligner Document ved, at det repræsenterer BSON-værdier som objekt, men det har nogle få mangler, som var umulige at overvinde:
-
det er en grænseflade snarere end en klasse, så dens API kan ikke udvides uden at bryde binær kompatibilitet.
-
Det implementerer faktisk ikke Map.
-
Fordi det er en grænseflade, er en separat betonklasse kaldet BasicDBObject, som implementerer denne grænseflade, påkrævet
Bson For at binde disse alle sammen, indeholder driveren en lille, men kraftfuld grænseflade kaldet Bson. Enhver klasse, der repræsenterer et BSON-dokument, uanset om det er inkluderet i selve driveren eller fra en tredjepart, kan implementere denne grænseflade og kan derefter bruges et hvilket som helst sted i højniveau-API'en, hvor der kræves et BSON-dokument.