Fasterxml ObjectNode到MongoDB - Java

时间:2014-04-16 10:59:07

标签: mongodb mongodb-java fasterxml

您好我有一些com.fasterxml.jackson.databind.node.ObjectNode形式的Json数据,我想将它存储在MongoDB中。

如何有效地将ObjectNode转换为MongoDB DBObject,反之亦然?

1 个答案:

答案 0 :(得分:2)

对于这样一个简单的映射,http://json.org(java部分)中的大多数工具都可以工作。对于他们中的一个(杰克逊,http://wiki.fasterxml.com/JacksonInFiveMinutes),你会这样做:

HashMap<String,Object> result = new ObjectMapper().readValue(JSON_SOURCE, HashMap.class);

(其中JSON_SOURCE是文件,输入流,阅读器或json内容字符串) 见:Convert Json to Map

特别是对于将ObjectNode插入mongodb,如果您使用的是Java,则可以执行以下操作:

BasicDBObject dbObject = new BasicDBObject();
HashMap<String, Object> keyValuePairs = new ObjectMapper().readValue(TheObjectNode.traverse(), HashMap.class);
dbObject.putAll(keyValuePairs);