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/1/database/10.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/4/postgresql/10.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
Java Morphia聚合查询以获取列表的大小_Java_Database_Mongodb_Aggregation Framework_Morphia - Fatal编程技术网

Java Morphia聚合查询以获取列表的大小

Java Morphia聚合查询以获取列表的大小,java,database,mongodb,aggregation-framework,morphia,Java,Database,Mongodb,Aggregation Framework,Morphia,我试图计算集合中每个文档列表中的元素数,类似于下面的示例。() 此查询将返回每个文档中列表“颜色”的大小 等效的morphia查询如下所示: pipeline = ds.createAggregation(Abc.class) .match(query) .project(Projection.projection("count", Projection.expression("$size","

我试图计算集合中每个文档列表中的元素数,类似于下面的示例。()

此查询将返回每个文档中列表“颜色”的大小

等效的morphia查询如下所示:

pipeline =  ds.createAggregation(Abc.class)
                .match(query)
                .project(Projection.projection("count", 
                 Projection.expression("$size","colors")));
执行上述操作时出错:java.lang.String无法转换为com.mongodb.DBObject
我无法实现相同的morphia查询。
在这方面的任何帮助都将不胜感激。

您试过了吗

Projection.expression("$size","$colors")));
在颜色之前用美元?

你试过了吗

Projection.expression("$size","$colors")));

在颜色之前使用美元?

更改以下代码行

project(Projection.projection("count", 
                 Projection.expression("$size","colors"))


更改以下代码行

project(Projection.projection("count", 
                 Projection.expression("$size","colors"))


可能重复的我尝试了本文中提到的解决方案,但没有成功。可能重复的我尝试了本文中提到的解决方案,但没有成功。我刚刚尝试了$,结果得到错误:java.lang.String无法转换为com.mongodb.DBObjectI刚刚尝试了$,最终得到错误:java.lang.String无法转换为com.mongodb.DBObjector
Projection.expression(“count”,Projection.Projection($size”,“colors”))
Projection.expression(“count”,Projection.Projection($size”,“colors”))