-1

リストを含むオブジェクトを保存しようとしていますが、保存すると、次のようにドキュメントが「\」で表示されます。

\"tags\":[\"java\",\"eclipse\",\"jdbc\",\"jpa\",\"hibernate\",\"jee\",\"jsp\",\ "servlets\",\"taglibs\",\"tagfiles\",\"mvc\",\"ajax\",\"spring\",\"tomcat\"]

マップ インスタンスをtoString()結果とともに印刷すると、これらの「\」はありませんが、BasicDBObject を印刷すると、結果が「\」で返されます。

public void save(Map<String, Object> mapInstance) {

    BasicDBObject document = new BasicDBObject(mapInstance);

    collection.insert(document);
}
4

1 に答える 1

1

MongoDB はJSON の文字列を直接受け入れません。BasicDBObject最初にそれらを sに解析する必要があります。次のようなものでそれを行うことができます:

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

collection.insert(dbObj);
于 2013-08-16T09:02:47.210 に答える