JSON insert to MongoDB

2 Ansichten (letzte 30 Tage)
Seb
Seb am 23 Jul. 2017
I have a structure array. I am able to encode this to json formatted text using matlabs function jsonencode(). I now want to insert this into MongoDB using the java driver. This is what I have so far:
javaaddpath('/Users/seb/Documents/MATLAB/mongo-java-driver-3.4.2.jar')
import com.mongodb.*;
mongoClient = MongoClient();
db = mongoClient.getDB( 'mydb' );
colls = db.getCollectionNames();
coll = db.getCollection('testCollection');
doc = BasicDBObject();
doc.put(json_string);
wc = com.mongodb.WriteConcern(1);
coll.insert(doc, wc);
Problem is I cannot put the json_string into doc, as it needs to be parsed into a java object and then inserted. Any ideas....?
  1 Kommentar
Sailesh Sidhwani
Sailesh Sidhwani am 27 Jul. 2017
What is the exact error message that you receive when you try to put "json_string" into "doc"?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Nikolaus Koopmann
Nikolaus Koopmann am 13 Apr. 2022
try this:
javaaddpath('/Users/seb/Documents/MATLAB/mongo-java-driver-3.12.10.jar') % NOTE: i changed the version
import com.mongodb.*;
mongoClient = MongoClient();
db = mongoClient.getDB( 'mydb' );
colls = db.getCollectionNames();
coll = db.getCollection('testCollection');
% changed code hereafter
doc = org.bson.Document.parse(java.lang.String(json_string)); % !!!
coll.insertOne(doc);

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by