我是JAVA和MONGODB的新手,我一直在学习尝试和理解这些技术是否能满足我对产品的需求。
我现在遇到的问题是无法将JAVA中的文档(记录)插入到我的MONGODB集合中。
我正在使用新的MONGODB version 3.0。
到目前为止的代码
MongoCollection<Document> coll = db.getCollection("Collection");
String json = "{'class':'Class10', 'student':{'name':'Alpha', 'sex':'Female'}, {'name':'Bravo', 'sex':'Male'}}";我找到了将其转换为DBObject类型的代码。
DBObject dbObject = (DBObject)JSON.parse(json);但我猜新版本的MONGODB没有insert方法,而是有insertOne method。
coll.insertOne()要求输入为文档格式,不接受DBObject格式。
coll.insertOne((Document) dbObject);给出了错误
com.mongodb.BasicDBObject cannot be cast to org.bson.Document是否有人可以帮助我进行正确的类型转换,并给我一个链接,在那里我可以找到并学习相同的类型?
致以问候。
发布于 2015-06-11 22:58:04
使用Document类中定义的静态parse(String json)方法。
发布于 2015-09-27 17:14:04
下面的代码必须为您工作。
MongoCollection<BasicDBObject> coll = db.getCollection("Collection", BasicDBObject.class);
coll.insertOne(dbObject);发布于 2017-03-10 14:58:23
我使用google gson将pojo转换为json,这是完美的工作。
private final MongoCollection<Document> collection;
//my save
String json = gson.toJson(data);//data is User DTO, just pojo!
BasicDBObject document = (BasicDBObject) JSON.parse(json);
collection.insertOne(new Document(document));Java mongodb驱动程序版本为3.4.2
https://stackoverflow.com/questions/30498240
复制相似问题