[MongoDB]MongoDB與JAVA結合使用CRUD


匯總:

1. [MongoDB]安裝MongoDB
2. [MongoDB]Mongo基本使用:
3. [MongoDB]MongoDB的優缺點及與關系型數據庫的比較
4. [MongoDB]MongoDB與JAVA結合使用CRUD

使用起來也相當簡單,由於MongoDB是類文件的數據庫,所以其操作起來非常方便

 

首先下載相應的jar包,這里我直接使用Maven自動獲取,以下為POM文件中的配置:

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>4.8.2</version>

</dependency>

<dependency>

<groupId>org.mongodb</groupId>

<artifactId>mongo-java-driver</artifactId>

<version>2.7.2</version>

</dependency>

一個MongoDb的jar包和Junit的jar包,即可

 

后面即可開始編寫代碼,直接在某個java類的main方法中調用即可:

public static void main(String[] args) throws Exception{

// 創建一個Mongo實例,默認使用本地"127.0.0.1", 27017

Mongo mongo1j = new Mongo();

// 使用IP+端口號創建

Mongo mongo = new Mongo("127.0.0.1", 27017);

 

// 得到所有數據庫的名稱

for(String name : mongo.getDatabaseNames()) {

System.out.println("dbName: " + name);

}

 

// 取得某個數據庫,用於后續對數據庫的操作

DB db = mongo.getDB("student");

 

for(String name : db.getCollectionNames()) {

System.out.println("collectionName: " + name);

}

// 取得對應的集合

DBCollection students = db.getCollection("student");

// 查詢所有集合中的數據

DBCursor cur = students.find();

// 遍歷集合中的所有內容

while(cur.hasNext()) {

System.out.println(cur.next());

}

System.out.println("cur.count(): " + cur.count());

System.out.println("cur.getCursorId(): " + cur.getCursorId());

System.out.println("JSON.serialize(): " + JSON.serialize(cur));

 

// DELETE操作

students.remove(new BasicDBObject("name", "yangjx"));

System.out.println("cur.count(): " + cur.count());

 

// ADD操作

DBObject student = new BasicDBObject();

student.put("name", "yangjx");

student.put("age", 55);

students.save(student);

System.out.println("cur.count(): " + cur.count());

 

// UPDATE操作

DBObject updateObj = new BasicDBObject();

updateObj.put("age", 30);

updateObj.put("name", "zhangGY");

updateObj.put("extra", "markHere");

students.update(new BasicDBObject("age", 30), updateObj);

System.out.println(JSON.serialize(students.find(new BasicDBObject("name", "zhangGY"))));

}

 

上述代碼執行完成之后會打印出如下:

dbName: local

dbName: student

collectionName: colName

collectionName: student

collectionName: system.indexes

{ "_id" : { "$oid" : "555ae83a09668180fadccdeb"} , "age" : 30}

{ "_id" : { "$oid" : "555ae84009668180fadccdec"} , "name" : "zhangYC" , "age" : 29.0 , "sex" : true}

{ "_id" : { "$oid" : "555ae84709668180fadccded"} , "name" : "zhangYYQ" , "age" : 30.0 , "sex" : true}

{ "_id" : { "$oid" : "555aebdb09b332c5a188b620"} , "passwd" : "1234"}

{ "_id" : { "$oid" : "555d80d7b7a5042665b195ae"} , "name" : "yangjx" , "age" : 55}

cur.count(): 5

cur.getCursorId(): 0

JSON.serialize(): [ { "_id" : { "$oid" : "555ae83a09668180fadccdeb"} , "age" : 30} , { "_id" : { "$oid" : "555ae84009668180fadccdec"} , "name" : "zhangYC" , "age" : 29.0 , "sex" : true} , { "_id" : { "$oid" : "555ae84709668180fadccded"} , "name" : "zhangYYQ" , "age" : 30.0 , "sex" : true} , { "_id" : { "$oid" : "555aebdb09b332c5a188b620"} , "passwd" : "1234"} , { "_id" : { "$oid" : "555d80d7b7a5042665b195ae"} , "name" : "yangjx" , "age" : 55}]

cur.count(): 4

cur.count(): 5

[ { "_id" : { "$oid" : "555ae83a09668180fadccdeb"} , "age" : 30 , "name" : "zhangGY" , "extra" : "markHere"}]

 

參考:

http://www.cnblogs.com/hoojo/archive/2011/06/02/2068665.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM