導航:首頁 > 編程語言 > mongodbjava文檔

mongodbjava文檔

發布時間:2022-05-17 04:39:28

A. 如何在java中維護MongoDB的

在MongoDB中,文檔是對數據的抽象,它被使用在Client端和Server端的交互中。所有的Client端(各種語言的Driver)都會使用這種抽象,它的表現形式就是我們常說的BSON(Binary JSON )。
BSON是一個輕量級的二進制數據格式。
MongoDB能夠使用BSON,並將BSON作為數據的存儲存放在磁碟中。
當Client端要將寫入文檔,使用查詢等等操作時,需要將文檔編碼為BSON格式,然後再發送給Server端。同樣,Server端的返回結果也是編碼為BSON格式再放回給Client端的。

B. mongodb怎麼用java插入數據

把bson數據文件restore到另一個db時,需要注意:不能先創建索引再restore數據,否則性能極差,mongorestore工具默認會在restore完數據時,根據mp出來的index信息創建索引,無須自己創建,如果是要更換索引,也應該在數據入庫完之後再創建。

C. java怎麼做到使用mongodb來進行分組查詢統

java操作mongodb進行查詢,常用篩選條件的設置如下:

條件列表:
BasicDBList condList = new BasicDBList();
臨時條件對象:
BasicDBObject cond = null;
DBCollection coll = db.getCollection("A");

1、$where
在某種應用場合,若要集合A查詢文檔且要滿足文檔中某些屬性運算結果,可以編寫一腳本函數用where進行設置,比如:
某集合中存放的用戶信息,包括姓名、年齡、手機號、地址等,要篩選出年齡大於20且小於等於40的用戶,我們可以這樣:
String ageStr = "function (){return parseFloat(this.age) > 20 && parseFloat(this.age) <= 40};";
cond = new BasicDBObject();
cond.put("$where",ageStr);

放入條件列表
condList.add(cond);

2、$in
接1實例中,要查詢年齡為23、40、50的用戶信息,我們可以這樣:
創建一個臨時的條件列表對象,將條件值分別添加進去
BasicDBList values = new BasicDBList();
values.add(23);
values.add(40);
values.add(50);

cond = new BasicDBObject();
cond.put("age",new BasicDBObject("$in",values));

放入條件列表
condList.add(cond);

3、模糊匹配
接1實例中,要按照用戶的姓名進行模糊查詢,如:王,我們可以這樣做:

使用不區分大小寫的模糊查詢
3.1完全匹配

D. 怎麼講java對象寫入mongo

Mongodb官方提供的Java驅動,保存與讀取,需要的者是DBObject對象,這是一個介面,實現put,get等方法,跟map類似,如果我們要直接把普通的java對象保存到mongodb,就需要先轉換成DBObject對象,或者直接實現DBObject介面,操作起來相當復雜。還好,monodb驅動帶了把json轉換成DBObject對象的功能,加上Google的Gson,就可以實現把普通的對象保存到mongodb中。如果要從mogodb中讀出對象,反過來操作即可,但有一點需要注意的是,mongodb的文檔沒有固定的欄位,所以用Gson轉換,可能因為各個文檔屬性不同,轉出的對象屬性都是空的,要確保在插入時都是插入同一個類的對象。
下面的例子是把User對象插入到Mongodb中,並讀出來
User.java:
package com.mongo;

public class User {
String name;
int age;
Oid _id;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
/**
* Mongodb會自動生成ObjectId
* @author fhp
*
*/
public class Oid{
String $oid;
public String get$oid() {
return $oid;
}

public void set$oid(String $oid) {
this.$oid = $oid;
}

}
}
Main.java:
package com.mongo;

import java.net.UnknownHostException;

import com.google.gson.Gson;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.util.JSON;

public class Main {

/**
* @param args
* @throws UnknownHostException
*/
public static void main(String[] args) throws UnknownHostException {
// TODO Auto-generated method stub
MongoClient mongoClient = new MongoClient();

DB psdoc = mongoClient.getDB("psdoc");
DBCollection user=psdoc.getCollection("user");

User u1=new User();
u1.setAge(20);
u1.setName("ssss");
Gson gson=new Gson();
//轉換成json字元串,再轉換成DBObject對象
DBObject dbObject = (DBObject) JSON.parse(gson.toJson(u1));
//插入資料庫
user.insert(dbObject);

DBCursor cursor=user.find();
while(cursor.hasNext())
{
DBObject obj=cursor.next();
//反轉
User u=gson.fromJson(obj.toString(), User.class);
System.out.println(u.name);
}
}

}

閱讀全文

與mongodbjava文檔相關的資料

熱點內容
短字元串壓縮 瀏覽:861
u盤插入後顯示加密格式化 瀏覽:942
我的世界怎麼用命令方塊獲得超級武器 瀏覽:382
狗語翻譯器app鏈接怎麼下 瀏覽:905
選擇排序演算法的流程圖 瀏覽:881
如何對文件夾開啟共享 瀏覽:527
常用的磁碟調度演算法 瀏覽:662
怎麼用返利app返利 瀏覽:127
java代碼快速 瀏覽:243
單片機左移右移後是補1還是0 瀏覽:599
湛江一號命令 瀏覽:333
導出命令行 瀏覽:274
C和php交互 瀏覽:600
蘋果手機里的通訊錄如何導入安卓手機 瀏覽:170
怎麼在京東app裡面看自己會員等級 瀏覽:43
emerson伺服器怎麼短接啟動 瀏覽:559
工控編程人員工資 瀏覽:397
速成義大利語pdf 瀏覽:250
連續加減乘除法的演算法 瀏覽:654
用mfc編程實現dda演算法 瀏覽:43