mongodb條件查詢的兩種方式

2021-09-26 02:57:06 字數 1443 閱讀 7394

方法一:

long systemtime = system.currenttimemillis() / 1000;

int endtime = (int) systemtime;

int starttime = (int) (systemtime - 600);

log.info("starttime={} endtime={} ", starttime, endtime);

query query = new query();

query.addcriteria(criteria.where("timestamp").gte(starttime).lte(endtime));

listchargeinfos = mongotemplate.find(query, chargeinfo.class, constantconfig.mongodb_collection_name);

log.info("chargeinfos:{}", jsonutil.bean2json(chargeinfos));

方法二:

// 1. 查詢10分鐘之內的資料, 彙總10分鐘以內的資料

mongo mongo = new mongo();

db db = mongo.getdb(constantconfig.mongodb_name);

dbcollection users = db.getcollection(constantconfig.mongodb_collection_name);

basicdblist condlist = new basicdblist();

basicdbobject cond1 = new basicdbobject();

basicdbobject cond2 = new basicdbobject(); // 此處不可用同乙個con會產生覆蓋

condlist.add(cond1);

condlist.add(cond2);

basicdbobject searchcond = new basicdbobject();

searchcond.put("$and", condlist);

dbcursor dbcursor = users.find(searchcond);

string infos = json.serialize(dbcursor);

listchargeinfos = jsonutil.json2list(infos, chargeinfo.class);

log.info("chargeinfo:{}", chargeinfos.isempty() ? "no data" : chargeinfos);

比較兩個方法,從**簡潔上看方法一更好,從**理解上看方法二更接近於底層更好理解。

其中方法二作條件查詢,查詢條件需要作多個cond否則查詢條件會被覆蓋!

mongoose連線mongodb的兩種方式

一 第一種方式 const mongoose require mongose const dbconn mongoose.createconnection mongodb localhost shop 第一步,建立與shop資料庫的連線,並返回mongoose物件 var schema mongoo...

程式設計的兩種方式執行Spark SQL查詢(方式二)

現在我們來實現在自定義程式中編寫spark sql查詢程式。實現查詢的方式有兩種 方式一 通過反射推斷schema。方式二 通過structtype直接指定schema。這次我們用方式二來實現自定義查詢。具體程式如下 package cn.allengao.sparksql import org.a...

Redhat nis client兩種接入方式

redhat nis client兩種接入方式 在redhat上nis client有兩種方式接入nis伺服器 etc nsswitch.conf和system config authentication 通過 etc nsswitch.conf的方式使用者只能通過yppasswd進行修改密碼且無法...