MongoDB初探
? ? 今天在項目中遇到需要使用MongoDB的地方,? 由于之前自己使用的是Redis,,沒有使用過mongo,,當時心里也是一陣涼涼
好在現(xiàn)如今網(wǎng)上資源多, 能學習到很多知識..現(xiàn)將今天使用的情況作個記錄,,以便以后使用.
? ? ?我是用的官網(wǎng)最新版的3.9.1的驅(qū)動版本,,.
<dependency><groupId>org.mongodb</groupId><artifactId>mongodb-driver-sync</artifactId><version>3.9.1</version></dependency>? ? 由于驅(qū)動版本比較新, 很多資料都有點不適配,,而且我用的是原生的方法,,沒有使用mongoTemplate來進行操作
首先,,得像jdbc一樣,,獲取連接對象,如果遠程mongo有加密,,則需要添加憑證
MongoCredential credential = MongoCredential.createCredential(MONGODB_USERNAME, MONGODB_DATABASE, MONGODB_PASSWORD.toCharArray());MongoClient mongoClient = new MongoClient(new ServerAddress(MONGODB_IP,MONGODB_PORT), Arrays.asList(credential));這樣就已經(jīng)成功通過用戶名和密碼獲取到了mongo的連接,,而后則要獲取需要操作的數(shù)據(jù)庫和集合
DB db = mongoClient.getDB(MONGODB_DATABASE);DBCollection dbin = db.getCollection(MONGODB_COLLECTION);獲取到集合也就相當于mysql中獲得表了,,,然后就可以通過這個集合對其中的對象進行相應的操作,,如條件查詢(查詢所有對象中flag=false的對象):
DBCursor dbObjects = dbin.find(new BasicDBObject("flag","false"));這里返回的是一個DBCursor對象,他其實是一個查詢出來的結(jié)果集,可以對其進行遍歷,遍歷得到的對象是DBObject對象,,里邊包含了每條記錄的各種信息.
for (DBObject d:dbObjects){System.out.println(d.toMap());}toMap()是DBObject的自帶的方法,,可以將DBObject對象轉(zhuǎn)換成map,,可以更好地進行操作;
轉(zhuǎn)載于:https://www.cnblogs.com/xQlover/p/10318682.html
總結(jié)
- 上一篇: 记录第一次使用Texlive+TexSt
- 下一篇: C++ 生成洛伦兹的蝴蝶