Je suis nouveau sur MongoDB. Je reçois une erreur loginCollection.aggregate
indiquant:La méthode aggregate (List <? Extends Bson>) dans le type MongoCollection <Document> ne s'applique pas aux arguments (BasicDBObject)
L'agrégat de la méthode (liste) dans le MongoCollection type n'est pas applicable pour les arguments (BasicDBObject)
Après mon extrait de code. Merci d'avance.
public MonthlyLoginCount monthlyLoginCount() {
MonthlyLoginCount monthlyLoginCount = new MonthlyLoginCount();
Map<String, Long> map = new HashMap<String, Long>();
MongoClient mongo = new MongoClient(dataSource, 27017);
MongoCollection<Document> loginCollection = mongo.getDatabase(mongoDataBase).getCollection(loginDetailsCollection);
AggregationOutput logincount = loginCollection.aggregate(new BasicDBObject("$group",
new BasicDBObject("_id", "$email_id").append("value", new BasicDBObject("$push", "$value"))));
Iterator<DBObject> results = logincount.results().iterator();
while (results.hasNext()) {
try {
Object str = results.next().get("_id");
long count = loginCollection.count(new BasicDBObject("email_id", str.toString()));
System.out.println("email id:: " + str.toString() + " count: " + count);
map.put(str.toString(), count);
} catch (Exception e) {
e.printStackTrace();
}
}
mongo.close();
monthlyLoginCount.setMap(map);
return monthlyLoginCount;
}