0
我想提出一個Java應用程序,我想插入我的MongoDB的一些數據的ID,但我想用我的財產來替換默認ID如何在MongoDB中插入自己的對象(從Java)
這裏是我的代碼:
MongoClient mongoClient = new MongoClient("localhost");
DB db = mongoClient.getDB("indexdb");
DBCollection coll = db.getCollection("indexCollection");
for (Map.Entry<String, ReduceResult> rr : directindex.entrySet()) {
BasicDBObject doc = new BasicDBObject("DOC", rr.getKey());
Map<String,Integer>wordmap=new HashMap<String,Integer>();
for (Map.Entry<String, Integer> r : rr.getValue().getIndexedFile().entrySet()) {
wordmap.put(r.getKey(), r.getValue());
}
doc.append("terms", wordmap);
coll.insert(doc);
}
輸出是
{ "_id" : { "$oid" : "58e5889ce4b02461ad5af080"} , "DOC" : "/home/ion/Desktop/RIW/input/doc4" , "terms" : { "dan" : 1 , "gutui" : 1}}
{ "_id" : { "$oid" : "58e5889ce4b02461ad5af081"} , "DOC" : "/home/ion/Desktop/RIW/input/doc3" , "terms" : { "bune" : 1 , "gutui" : 1}}
{ "_id" : { "$oid" : "58e5889ce4b02461ad5af082"} , "DOC" : "/home/ion/Desktop/RIW/input/doc2" , "terms" : { "dan" : 1 , "mere" : 2}}
{ "_id" : { "$oid" : "58e5889ce4b02461ad5af083"} , "DOC" : "/home/ion/Desktop/RIW/input/doc1" , "terms" : { "ana" : 1 , "mere" : 1 , "pere" : 1}}
但我想不說「_id」插入我希望我的對象的ID爲「DOC」 誰能幫助我?謝謝!!
我不認爲你可以完全刪除'_id'場。將'DOC'值映射到'_id'或保持原樣並在'DOC'上查詢。 – Veeram