導航:首頁 > 編程語言 > 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文檔相關的資料

熱點內容
python字元串替換函數 瀏覽:825
app會員卡怎麼做 瀏覽:921
我愛你python編碼 瀏覽:365
一台計算機作為伺服器一般可以運行什麼軟體 瀏覽:421
應用加密桌面還顯示頭像咋辦 瀏覽:523
微軟硬碟加密密鑰 瀏覽:156
空調壓縮機和風扇 瀏覽:511
代碼可以編譯運行 瀏覽:918
銀行卡加密碼大全真號 瀏覽:447
單片機測esr 瀏覽:412
app怎麼設置消息功能 瀏覽:916
明詞pdf 瀏覽:427
雲域控伺服器有什麼用 瀏覽:577
位元組和B站程序員 瀏覽:747
app推薦書要怎麼做 瀏覽:303
unix網路編程第一卷 瀏覽:851
c需要pdf 瀏覽:865
超級解壓的美甲 瀏覽:72
安卓手機如何永久取消靜音 瀏覽:722
appstore免密碼支付怎麼關閉 瀏覽:30