Java 如何根据Spring Data MongoDB中的条件在根级别投影所有字段并在嵌入式数组中包含一些对象

Java 如何根据Spring Data MongoDB中的条件在根级别投影所有字段并在嵌入式数组中包含一些对象,java,mongodb,spring-data,aggregation-framework,spring-mongodb,Java,Mongodb,Spring Data,Aggregation Framework,Spring Mongodb,我尝试使用聚合框架查询以下集合结构: { x: "1234", y: "5567" z: [{f: "lalo"}, {f: "juan"}] } 我使用下面的projectionOperation方法来检索带有z数组的文档,该数组只包含符合条件的对象 ProjectionOperation createProjectionOperation(String accountsOnFile){

我尝试使用聚合框架查询以下集合结构:

{
   x: "1234",
   y: "5567"
   z: [{f: "lalo"}, {f: "juan"}]
}
我使用下面的projectionOperation方法来检索带有z数组的文档,该数组只包含符合条件的对象

ProjectionOperation createProjectionOperation(String accountsOnFile){
   ProjectionOperation operation = Aggregation.project().
                       and(filter("z"))
                        .as("z")
                        .by(valueOf("z.f").equalToValue(accountsOnFile))).as("z")
}

问题是,无论使用何种匹配条件,根级别的所有字段都将被排除。我不想手动包含根级别的所有字段,因为在原始文档中,我有许多字段。如何以非繁琐的编程方式在根级别包含所有字段?

而不是
project
使用
addFields
-有关用法示例,请参阅本文:。