Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在MongoDB java驱动程序中,如何将键函数(';keyf';)传递给';集团';命令_Java_Mongodb - Fatal编程技术网

在MongoDB java驱动程序中,如何将键函数(';keyf';)传递给';集团';命令

在MongoDB java驱动程序中,如何将键函数(';keyf';)传递给';集团';命令,java,mongodb,Java,Mongodb,我希望能够通过java驱动程序使用带有“keyf”参数的mongodb group命令。有人成功地完成了此操作吗?您必须使用不推荐使用的方法DBCollection.group(DBObject args)并将键函数javascript代码作为字符串添加到名为“$keyf”的DBObject键下 您必须使用不推荐使用的方法DBCollection.group(DBObject args),并将键函数javascript代码作为字符串添加到名为“$keyf”的DBObject键下 这段代码应该为您

我希望能够通过java驱动程序使用带有“keyf”参数的mongodb group命令。有人成功地完成了此操作吗?

您必须使用不推荐使用的方法DBCollection.group(DBObject args)并将键函数javascript代码作为字符串添加到名为“$keyf”的DBObject键下


您必须使用不推荐使用的方法DBCollection.group(DBObject args),并将键函数javascript代码作为字符串添加到名为“$keyf”的DBObject键下


这段代码应该为您完成以下工作:

public static CommandResult exeMapReduceAlikeGroupCmd(DB db, String colName, String keyFunc, DBObject query,
                                                      String reduceFunc, DBObject initial) {
    BasicDBObject cmd = new BasicDBObject("ns", colName);// this is the collection name
    cmd.append("$keyf", keyFunc);// keyf function
    cmd.append("cond", query); // cond query object
    cmd.append("$reduce", reduceFunc);// reduce function
    cmd.append("initial", initial);// initial value
    cmd = new BasicDBObject("group", cmd);
    return db.command(cmd, db.getOptions());
}

这段代码应该为您完成以下工作:

public static CommandResult exeMapReduceAlikeGroupCmd(DB db, String colName, String keyFunc, DBObject query,
                                                      String reduceFunc, DBObject initial) {
    BasicDBObject cmd = new BasicDBObject("ns", colName);// this is the collection name
    cmd.append("$keyf", keyFunc);// keyf function
    cmd.append("cond", query); // cond query object
    cmd.append("$reduce", reduceFunc);// reduce function
    cmd.append("initial", initial);// initial value
    cmd = new BasicDBObject("group", cmd);
    return db.command(cmd, db.getOptions());
}

运行良好,仍然怀疑是否存在未弃用的变体。运行良好,仍然怀疑是否存在未弃用的变体。