如何使用其 Java 驱动程序 (3.5.0) 从 Mongo 中的字段获取值
How to get values from a field in Mongo, using its Java Driver (3.5.0)
我在 javascript 中使用 MongoDB,并且一直在使用 Mongo 的 Java 驱动程序。 (这是因为它是 JAR 格式,而我使用的是 Mirth Connect)。问题是,我正在尝试使用来自另一个 collection 的字段并将信息带到新的 collection。根据我的阅读,filter from the Java Driver should return a DBCursor。我不擅长 javascript,并且还没有弄清楚如何从我已经进行的查询中的字段中获取值。
我正在使用它来进行查询:
var uri = new Packages.com.mongodb.MongoClientURI("mongodb://usr:pwd@localhost:27017/admin");
var mongoClient = new Packages.com.mongodb.MongoClient(uri);
var database = mongoClient.getDatabase("mydb");
var collection = database.getCollection("mycollection");
var person = collection.findOne(com.mongodb.client.model.Filters.eq("person.id", id));
例如,我想要与ID关联的人的姓名。任何有关我如何获得它的帮助,将不胜感激。
collection 中的 JSON 也是这样的:
{"patient" : {
"id": 1234,
"first_name": "Peter",
"last_name": "Parker",
},
"other_stuff": ...
}
尝试使用以下代码使用点符号查找一个 (find + first) 来访问患者的名字。
var uri = new Packages.com.mongodb.MongoClientURI("mongodb://usr:pwd@localhost:27017/admin");
var mongoClient = new Packages.com.mongodb.MongoClient(uri);
var database = mongoClient.getDatabase("mydb");
var collection = database.getCollection("mycollection");
var personName = collection.find(com.mongodb.client.model.Filters.eq("person.id", id)).first().get("patient.first_name")
我在 javascript 中使用 MongoDB,并且一直在使用 Mongo 的 Java 驱动程序。 (这是因为它是 JAR 格式,而我使用的是 Mirth Connect)。问题是,我正在尝试使用来自另一个 collection 的字段并将信息带到新的 collection。根据我的阅读,filter from the Java Driver should return a DBCursor。我不擅长 javascript,并且还没有弄清楚如何从我已经进行的查询中的字段中获取值。
我正在使用它来进行查询:
var uri = new Packages.com.mongodb.MongoClientURI("mongodb://usr:pwd@localhost:27017/admin");
var mongoClient = new Packages.com.mongodb.MongoClient(uri);
var database = mongoClient.getDatabase("mydb");
var collection = database.getCollection("mycollection");
var person = collection.findOne(com.mongodb.client.model.Filters.eq("person.id", id));
例如,我想要与ID关联的人的姓名。任何有关我如何获得它的帮助,将不胜感激。
collection 中的 JSON 也是这样的:
{"patient" : {
"id": 1234,
"first_name": "Peter",
"last_name": "Parker",
},
"other_stuff": ...
}
尝试使用以下代码使用点符号查找一个 (find + first) 来访问患者的名字。
var uri = new Packages.com.mongodb.MongoClientURI("mongodb://usr:pwd@localhost:27017/admin");
var mongoClient = new Packages.com.mongodb.MongoClient(uri);
var database = mongoClient.getDatabase("mydb");
var collection = database.getCollection("mycollection");
var personName = collection.find(com.mongodb.client.model.Filters.eq("person.id", id)).first().get("patient.first_name")