Как фильтровать только совпадающий объект в списке объектов в mongodb Java
> db.reports.find({'productViews.productId' : {$lte: "1234"}},{"productViews" : 1})
возвращает
{ "_id" : ObjectId("5c062a2dfcd262039c7cb592"),
"productViews" :
[
{ "productId" : "1234", "views" : "2" },
{ "productId" : "3214", "views" : "34" }
]
}
Приведенный выше запрос возвращает все значения массива, но я хочу толькообъект, который соответствует предоставленному объекту.Посоветуйте пожалуйста как это сделать в java
fun getProductViews(mongoDatabase: MongoDatabase) {
val report = mongoDatabase.getCollection("reports")
val result = report.find(Filters.lte("productViews.productId", "20"))
print(result)
}
@Document(collection = "reports")
data class Report(
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
var reportId: String = Date().toString(),
var productViews: ArrayList<ProductViews>,
var categoryViews: ArrayList<CategoryViews>,
)