小编典典

Java&Mongo:在字段存在的地方获取对象

java

情况:我收集了文档,每个文档都包含以下字段:“ _ id”(ObjectId),“ userId”(String),但也可以是字段“
files”(Object)。

当我这样做时:

final Query query = new Query();           
query.fields().include("_id");

final List<File> fileList = mongo.find(query, File.class);

结果,我得到fileList了所有记录,这很好。

但是,当我这样做时,仅在“文件”字段存在的地方获取记录-结果是错误的。

final Query query = new Query();           
query.fields().include("files");

final List<File> fileList = mongo.find(query, File.class);

是否由于我试图获取“对象”字段而发生错误?以及如何使用查询或条件解决此问题?


阅读 225

收藏
2020-11-30

共1个答案

小编典典

您可以构造它Query来获取包含以下内容的所有文档files

Query.query(Criteria.where("files").exists(true))
2020-11-30