【发布时间】:2011-01-28 08:31:47
【问题描述】:
我需要为集合中的文档创建一个对象图。 我能够得到所有的键值对。这是执行此操作的代码:
import com.mongodb.*;
import java.util.*;
public class GetKeyValuePair {
public static void print(DBObject doc) {
Set<String> allKeys = doc.keySet();
Iterator<String> it = allKeys.iterator();
while (it.hasNext()) {
String temp = it.next();
System.out.print(temp + "-");
if (doc.get(temp) instanceof BasicDBObject) {
System.out.println("\n");
print((DBObject) doc.get(temp));
} else {
System.out.println(doc.get(temp));
}
}
}
public static void main(String args[]) {
try {
Mongo m = new Mongo();
DB db = m.getDB("test");
Set<String> colls = db.getCollectionNames();
DBCollection coll = db.getCollection("first");
DBObject doc = new BasicDBObject();
DBCursor cur = coll.find();
Set<String> allKeys;
Iterator<String> it;
while (cur.hasNext()) {
doc = cur.next();
allKeys = doc.keySet();
it = allKeys.iterator();
print(doc);
System.out.println("-------");
}
} catch (UnknownHostException e) {
System.out.println(e.toString());
} catch (MongoException.DuplicateKey e) {
System.out.println("Exception Caught" + e);
}
}}
有没有其他方法可以做到这一点,我的意思是一种相当简单的方法。 提前致谢
【问题讨论】:
-
我认为你需要更好地解释问题是什么以及你想要做什么。
-
您是否正在寻找要重构的已发布代码?还是您完全质疑这种方法?
-
@Tim 我要求一种全新的方法。
标签: java mongodb nested mongo-java