保存BasicDBObject时的栏

时间:2013-08-15 20:03:47

标签: mongodb mongodb-java

我正在尝试使用列表保存对象,但是当我保存它时,文档显示为“\”,如下所示:

  

\ “标签\”:[\ “的java \”,\ “蚀\”,\ “JDBC \”,\ “JPA \”,\ “休眠\”,\ “JEE \”,\“JSP \ ” \ “小服务程序\”,\ “标记库\” \ “标签文件\”,\ “MVC \”,\ “AJAX \”,\ “弹簧\”,\ “Tomcat的\”]

当我用toString()打印我的地图实例时,结果没有那些“\”,但是, 当我打印我的BasicDBObject时,它以“\”

返回结果
public void save(Map<String, Object> mapInstance) {

    BasicDBObject document = new BasicDBObject(mapInstance);

    collection.insert(document);
}

1 个答案:

答案 0 :(得分:1)

MongoDB不直接接受 JSON 字符串。您需要先将这些解析为BasicDBObject。你可以用以下的东西来做到这一点:

Object o = com.mongodb.util.JSON.parse(mapInstance);
DBObject dbObj = (DBObject) o;

collection.insert(dbObj);