Java操作MongoDB的增刪改查代碼
連接, 獲取db, collection, 增加, 刪除, 更新, 查詢等基本操作
package com.zhongsou.mongo;import java.net.UnknownHostException; import java.util.List; import java.util.Set;
import org.junit.Test;
import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.DBTCPConnector; import com.mongodb.Mongo; import com.mongodb.WriteResult;
/**
- 對于mongon的測試
@author Gaojie */ public class MongoDBTest {
Mongo m; DBTCPConnector conn; private DB db;
@Test public void testMongo() throws UnknownHostException {
String host = "202.108.*.*"; m = new Mongo(host, 27017); // m.get
}
@Test public void testConntect() throws Exception {
testMongo(); System.out.println("Mongo: " + m); conn = m.getConnector(); System.out.println("DBTCPConnector: " + conn.getServerAddressList());
}
@Test public void testDB() throws Exception {
testMongo(); testConntect(); // 獲取admin的數據庫 db = m.getDB("gaojie"); System.out.println("DB=" + db); boolean auth = db.authenticate("root", "123456".toCharArray()); System.out.println("auth=" + auth);
}
@Test public void testGetAll() throws Exception {
testDB(); // 獲取db里面的collection(表) Set<String> names = db.getCollectionNames(); for (String name : names) { System.out.println("CollectionName: " + name); DBCollection coll = db.getCollection(name); System.out.println("CollectionCount=" + coll.count()); DBCursor cursor = coll.find(); while (cursor.hasNext()) { System.out.println("DBObject=" + cursor.next()); } List<DBObject> objs = coll.getIndexInfo(); for (DBObject obj : objs) { System.out.println("IndexInfo=" + obj); } System.out.println("=============="); } // 獲取表結果
}
@Test public void testCollection() throws Exception {
testDB(); if (db.isAuthenticated()) { for (String coll : db.getCollectionNames()) { System.out.println("collection=" + coll); } }
}
@Test public void testInsert() throws Exception {
testDB(); if (db.isAuthenticated()) { DBCollection coll = db.getCollection("test"); DBObject obj = new BasicDBObject(); obj.put("name", "gaojie"); obj.put("age", 2403); obj.put("md5", "546466sfsddfsd"); WriteResult wr = coll.insert(obj); System.out.println("WriteResult=" + wr); }
}
@Test public void testInsertObj() throws Exception {
testDB(); if (db.isAuthenticated()) { DBCollection coll = db.getCollection("test"); DBObject obj = new BasicDBObject(); obj.put("pepole", new User()); WriteResult wr = coll.insert(obj); System.out.println("WriteResult=" + wr); }
}
@Test public void testRemove() throws Exception {
testDB(); if (db.isAuthenticated()) { DBCollection coll = db.getCollection("test"); DBObject obj = new BasicDBObject(); // obj.put("name", "gaojie1"); obj.put("age", 110); System.out.println("WriteResult=" + coll.remove(obj)); }
}
@Test public void testUpdate() throws Exception {
testDB(); if (db.isAuthenticated()) { DBCollection coll = db.getCollection("test"); DBObject obj = new BasicDBObject(); obj.put("name", "gaojie10"); obj.put("age", 110); DBObject upObj = new BasicDBObject(); upObj.put("name", "gaojie10"); // upObj.put("age", 110); System.out.println("WriteResult=" + coll.update(obj, upObj)); }
}
@Test public void testQuery() throws Exception {
testDB(); if (db.isAuthenticated()) { DBCollection coll = db.getCollection("test"); DBObject obj = new BasicDBObject(); // obj.put("name", "gaojie00"); obj.put("age", 110); DBCursor cursor = coll.find(obj); while (cursor.hasNext()) { System.out.println("DBObject=" + cursor.next()); } }
} }</pre>