我正在使用MongoDB v3.2.0和Mongo Java Driver 3.0.4版本。我使用的是BasicDBObject
(不建議使用),而不是在java中使用Document
,因爲我需要在獨立的java項目中進行許多更改以轉換爲Document。任何人都可以告訴我更改爲Document,會不會在內存和大型集合插入和讀取方面有任何性能改進。有沒有什麼方法可以提高我在MongoDB上使用java的頻繁讀寫操作。MongoDB BasicDBObject vs java中的文檔
0
A
回答
0
基本DBobject未被棄用。在BasicDBobject只有過時的部分是DBPointer
類及其他一些方法,如toString() and getId()
文檔實現Map<String, Object>
並有更少的代碼雖然不建議用於新的應用程序相比,基本數據庫對象
DBOBJECT 寫,那些從2.x驅動程序系列升級的可能會繼續使用DBObject接口來表示BSON文檔。 DBOBJECT類似文件,它代表BSON值對象,但它有是不可能克服的幾個缺點:
它是一個接口,而不是一類,所以它的API不能沒有延長打破二進制兼容。
它實際上並沒有實現Map。
因爲它是一個接口,稱爲BasicDBObject一個單獨的具體類實現該接口,需要
BSON 爲了配合這些都在一起,該驅動器包含一個小而強大的接口稱爲BSON。代表BSON文檔的任何類,無論是包含在驅動程序本身還是來自第三方,都可以實現此接口,然後可以在需要BSON文檔的高級API中使用。
相關問題
- 1. 使用Java更新MongoDB中的文檔
- 2. 計數文檔MongoDB java
- 3. MongoDB從BasicDBObject中提取值(Java)
- 4. BasicDBObject更新重複相同的文檔
- 5. MongoDB/Java:在子文檔中插入文檔
- 6. Mongodb在java中查詢嵌套文檔
- 7. MongoDB Java API:put()vs append()
- 8. 將MongoDb查詢轉換爲Java BasicDbObject
- 9. Spring-Mongo:映射mongo文檔字段/ s到BasicDBObject /實體的BasicDBObject映射
- 10. 如何在Java中使用ObjectID更新MongoDB中的文檔
- 11. Java + MongoDB:更新文檔中的多個字段
- 12. 如何在Java中的MongoDB中識別文檔
- 13. MongoDB中的BasicDBObject拒絕取值整數
- 14. 使用java查詢mongodb文檔
- 15. 如何使用java更新mongodb中文檔中的特定值
- 16. 使用Java API在MongoDB中設置內部文檔屬性
- 17. 在MongoDB中查詢文檔的_id
- 18. Mongodb文檔檢索
- 19. 使用Java在MongoDB中更新嵌入式文檔
- 20. 如何從mongoDB中讀取文檔並通過java中的websockets發送文檔?
- 21. 從mongodb中提取字段值BasicDBobject
- 22. mongodb - 子文檔ID值
- 23. 使用JAVA更新mongoDB中的一個文檔
- 24. 我們可以使用_id在java中更新mongodb中的文檔嗎?
- 25. 創建新的Mongodb文檔vs推入文檔陣列
- 26. 使用MongoDB Java驅動程序更新嵌入式文檔中的字段?
- 27. 使用Java更新MongoDB中的特定字段而不是整個文檔
- 28. 在MongoDB中添加多個子文檔
- 29. MongoDB的Java驅動程序:mongojack,通過子文檔ID查詢
- 30. 如何使用Java將數組添加到MongoDB文檔?
實際上它們都是在那裏執行['Map'](http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true)接口在大多數情況下,您的應用程序應該只是簡單地使用這些接口方法。此外,['BasicDBObject'](http://mongodb.github.io/mongo-java-driver/3.4/javadoc/com/mongodb/BasicDBObject.html)[實際上並未被標記爲廢棄](http:// mongodb .github.io /蒙戈-java的驅動/ 3.4 /的Javadoc /棄用-list.html)。儘管在可用的情況下使用「Document」可能是最佳做法。各種驅動程序抽象層仍然使用'DBObject' –