Java 吗啡 $sample howto?

Java morphia $sample howto?

我正在尝试从随机集合中检索单个文档,而不是将整个集合加载到列表中。

我知道我想使用聚合,但我不确定如何使用 Java/Morphia 实际执行它,而且我在自述文件中也找不到任何内容。

db.users.aggregate(
   [ { $sample: { size: 1 } } ]
) 

如何使用 Morphia(理想情况下)或通过原始 Mongodb 驱动程序执行此查询?

关于获取随机文档的所有问题似乎都在 3.2 之前,看起来比我想象的要复杂。

弄清楚了,虽然聚合现在已弃用,但它适用于我的用例

public void findRandomObject() {
    BasicDBObject object = new BasicDBObject("$sample", new BasicDBObject("size", 1));
    AggregationOutput output = getCollection().aggregate(object);

    for (DBObject result : output.results()) {
        LOGGER.info("output >> " + result);
    }
}