1. 程式人生 > >java操作MongoDB資料庫

java操作MongoDB資料庫

1、如何啟動MongoDB資料庫?

如圖所示:安裝好MongoDB之後,資料夾顯示如下:


MongoDB預設開啟27017埠,開啟瀏覽器,輸入http://localhost:27017/,顯示如下:


啟動資料庫步驟:

(1)cd d:\beiyongkaifa\mongodb\bin

(2)輸入:mongod --dbpath=D:\beiyongkaifa\mongodb\db,回車。如圖1所示:


(3)啟動另一個cmd,cd d:\beiyongkaifa\mongodb\bin

(4)輸入:mongo,回車,則倆個cmd中分別顯示如下:


如何證明資料庫已經啟動?

可以開啟瀏覽器,輸入http://localhost:27017/,顯示如下:證明資料庫已經啟動。


2、Java程式中所需的mongoDB驅動下載和匯入:

下載地址如下:http://download.csdn.net/detail/jjavaboy/7199317 下載下來是一個jar包。

在IDE myeclipse中匯入外部jar包的步驟為:http://jingyan.baidu.com/article/72ee561aba4e2ce16138df00.html

匯入jar包後IDE如圖所示:


一個小Demo如下:

import java.net.UnknownHostException;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoException;

public class MongoDb_Test {

	public static void main(String[] args) {

		try {
			// 例項化Mongo物件,連線27017埠
			Mongo mongo = new Mongo("localhost", 27017);
			// 連線名為yourdb的資料庫,假如資料庫不存在的話,mongodb會自動建立
			DB db = mongo.getDB("yourdb");
			// Get collection from MongoDB, database named "yourDB"
			// 從Mongodb中獲得名為yourColleection的資料集合,如果該資料集合不存在,Mongodb會為其新建立
			DBCollection collection = db.getCollection("yourCollection");
			// 使用BasicDBObject物件建立一個mongodb的document,並給予賦值。
			BasicDBObject document = new BasicDBObject();
			document.put("id", 1001);
			document.put("msg", "hello world mongoDB in Java");
			// 將新建立的document儲存到collection中去
			collection.insert(document);
			// 建立要查詢的document
			BasicDBObject searchQuery = new BasicDBObject();
			searchQuery.put("id", 1001);
			// 使用collection的find方法查詢document
			DBCursor cursor = collection.find(searchQuery);
			// 迴圈輸出結果
			while (cursor.hasNext()) {
				System.out.println(cursor.next());
			}
			System.out.println("Done");
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (MongoException e) {
			e.printStackTrace();
		}
	}
}

在MongoDB的cmd視窗中,執行如下命令:

(1)show dbs                                   檢視當前有哪些資料庫

(2)use yourdb                                 使用某個資料庫

(3)show collections                       檢視本資料庫中有哪些collection(表)

(4)db.yourCollection.find()            檢視yourCollection這張表儲存的資料

結果如圖所示: