java 对 mongoDB 分组统计操作 以及一些常用操作
生活随笔
收集整理的這篇文章主要介紹了
java 对 mongoDB 分组统计操作 以及一些常用操作
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
????/***?*?功能描述:*?*?@author?:xiaoyu?創(chuàng)建日期?:2014年2月19日?下午2:23:44*?*?@param?vehicleIds?*?@param?alarmTypeCode*?@return*?*?????????修改歷史?:(修改人,修改時(shí)間,修改原因/內(nèi)容)*/@Overridepublic?Map?findAlarmInfo(List<String>?vehicleId,?List<String>?alarmTypeCode)?{BasicDBList?vehicleIds?=?new?BasicDBList();BasicDBList?alarmTypeCodes?=?new?BasicDBList();for?(int?i?=?0;?i?<?vehicleId.size();?i++)?{vehicleIds.add(vehicleId.get(i));}for?(int?i?=?0;?i?<?alarmTypeCode.size();?i++)?{alarmTypeCodes.add(alarmTypeCode.get(i));}BasicDBObject?queryObject?=?new?BasicDBObject();queryObject.put("vehicleId",?new?BasicDBObject("$in",?vehicleIds));queryObject.put("alarmTypeCode",?new?BasicDBObject("$in",?alarmTypeCodes));String?reduce?=?"function(doc,?aggr){"?+?"aggr.count?+=?1;"?+?"????????}";DBObject?result?=?mongoTemplate.getCollection("alarmDetail").group(new?BasicDBObject("alarmTypeCode",?1),?queryObject,new?BasicDBObject("count",?0),?reduce);//對(duì)mongo數(shù)據(jù)庫(kù)進(jìn)行分組統(tǒng)計(jì)查詢Map?map?=?result.toMap();?一般會(huì)對(duì)返回的Map進(jìn)行處理?具體的業(yè)務(wù)代碼不貼出來(lái)} ????/***?這里利用Spring提供的操作mongo的模板類*/@Resourceprivate?MongoTemplate?mongoTemplate; ???????/***?*?功能描述:*?*?@author?:xiaoyu?創(chuàng)建日期?:2014年2月19日?下午2:23:44*?*?@param?vehicleId*?@return*?*?????????修改歷史?:(修改人,修改時(shí)間,修改原因/內(nèi)容)*/?public?Map<String,?Object>?findOnlineVehicles(List<String>?vehicleId)?{BasicDBList?vehicleIds?=?new?BasicDBList();for?(int?i?=?0;?i?<?vehicleId.size();?i++)?{vehicleIds.add(vehicleId.get(i));}BasicDBObject?queryObject?=?new?BasicDBObject();queryObject.put("vehicleId",?new?BasicDBObject("$in",?vehicleIds));queryObject.put("vehicleStatus",?new?BasicDBObject("$in",?new?Object[]?{?"XXX",?"XXX",?"XXX",?"XXX"?}));Query?query?=?new?BasicQuery(queryObject);long?onlineVehicles?=?this.mongoTemplate.count(query,?"realTimeDataInfo");//統(tǒng)計(jì)查詢count查詢Map<String,?Object>?onlineVehicle?=?new?HashMap<>();onlineVehicle.put("onlineVehicles",?onlineVehicles);return?onlineVehicle;}轉(zhuǎn)載于:https://my.oschina.net/pingdy/blog/201477
總結(jié)
以上是生活随笔為你收集整理的java 对 mongoDB 分组统计操作 以及一些常用操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux与Windows数据传输
- 下一篇: C++ new delete(二