Základní DBobject není zastaralý . Jediná zastaralá část v BasicDBobject je DBPointer
class a několik dalších metod jako toString() and getId()
Dokument implementuje Map<String, Object>
a je zde méně kódu k zápisu ve srovnání s objektem Basic DB
DBOobject Ačkoli to není doporučeno pro nové aplikace, uživatelé upgradující z řady ovladačů 2.x mohou nadále používat rozhraní DBObject k reprezentaci dokumentů BSON. DBObject je podobný dokumentu v tom, že reprezentuje hodnoty BSON jako Object, ale má několik nedostatků, které nebylo možné překonat:
-
je to rozhraní spíše než třída, takže jeho API nelze rozšířit bez porušení binární kompatibility.
-
Ve skutečnosti neimplementuje Mapu.
-
Protože se jedná o rozhraní, je vyžadována samostatná konkrétní třída s názvem BasicDBObject, která toto rozhraní implementuje
Bson Aby toto vše spojilo dohromady, ovladač obsahuje malé, ale výkonné rozhraní nazvané Bson. Jakákoli třída, která představuje dokument BSON, ať už je zahrnuta v samotném ovladači nebo od třetí strany, může implementovat toto rozhraní a poté jej lze použít kdekoli v rozhraní API na vysoké úrovni, kde je vyžadován dokument BSON.