【发布时间】:2018-12-11 11:39:20
【问题描述】:
我在 MongoDB 中有两个集合。我在 Jmeter 中使用 JSR223 采样器对 mongoDB 执行查找操作。
数据库名称: DB
集合名称: c_1, c_2
在 MongoDB 中执行查找聚合的 Groovy 代码。
c_1.insert(new BasicDBObject(["id" : 1, "name" : "abc", "lastName" : "kumar", "companyId": 10]))
c_2.insert(new BasicDBObject(["id" : 10, "companyName" : "Microsoft", "numEmployee" : 100 ]))
// build the $lookup operations
DBObject lookupFields = new BasicDBObject("from", "c_2");
lookupFields.put("localField", "companyId");
lookupFields.put("foreignField", "id");
lookupFields.put("as", "companydoc");
DBObject lookup = new BasicDBObject("$lookup", lookupFields);
// build the $project operations
DBObject projectFields = new BasicDBObject("name", 1);
projectFields.put("lastName", 1);
projectFields.put("companyId", 1);
projectFields.put("companyName", "$c_2.companyName");
DBObject project = new BasicDBObject("$project", projectFields);
List<DBObject> pipeline = Arrays.asList(lookup, project);
AggregationOutput output = c_1.aggregate(pipeline);
for (DBObject result : output.results())
{
System.out.println(result);
}
错误:响应消息:javax.script.ScriptException:groovy.lang.MissingPropertyException:没有这样的属性:查找类:Script79
【问题讨论】: