我在一个MongoDB集合中有超过10K的json文档。我想要检索它们&得到一个谷歌json文档数组。以下是我的代码段。
FindIterable<Document> dbResult = db.getCollection("mycollection", Document.class).find();
JsonArray result = new JsonArray();
JsonObject jsonObject;
JsonParser parser = new JsonParser();
for (Document doc : dbResult) {
// --> toJson () is time/CPU consuming operation
jsonObject = parser.parse(doc.toJson()).getAsJsonObject();
result.add(jsonObject);
}
问题:
获取GSON阵列需要太多内存和CPU周期。在分析代码时,我发现它调用了JSON()调用,这会占用大量的CPU周期。
我有以下问题
上述代码检索一个BSON文件&amp;处理它到GSON对象。有什么方法可以检索多个文档(比如说数组而不是一次一个文档)。
如何避免toJSON调用,特别是当我要检索大量的json文档时,我觉得它太慢了。我更喜欢直接检索GSON对象而不是先获得BSON的方法 - &gt;到JSON字符串 - &gt;到GSON对象。
阿图尔