java mongodb 增删改查_java操作mongodb:基本的增删改查
java操作mongodb的代碼,包含基本的增刪改查操作 獲取數據庫連接工具類 package com.liuc.db;import java.net.UnknownHostException;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.Mongo;/** * * @brief MongoDBUtil.java 操作
java操作mongodb的代碼,包含基本的增刪改查操作
獲取數據庫連接工具類
package com.liuc.db;
import java.net.UnknownHostException;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.Mongo;
/**
*
* @brief MongoDBUtil.java 操作mongodb工具類
* @attention 使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public class MongoDBUtil {
/**
*
* \brief 無需認證獲取數據庫連接
* @return
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public static DBCollection getDBConnectionWithoutAuth(String colName){
try {
Mongo mongo = new Mongo("localhost", 27017);
DB db = mongo.getDB("liuchao");
return db.getCollection(colName);
} catch (UnknownHostException e) {
e.printStackTrace();
return null;
}
}
/**
*
獲取需認證獲取數據庫連接
啟動登錄密碼認證:
登錄數據庫,添加用戶
use
db.addUser('user1','pwd1');
重啟服務端開啟認證服務
mongod --auth --dbpath=D:\mongodb\db
接下來登錄就需要用戶名密碼認證了
啟動客戶端:
use admin;
//進行登陸驗證,如果不通過,是沒有操作權限的了。
db.auth('user1','pwd1');
*/
public static DBCollection getDBConnectionWithAuth(String colName){
try {
Mongo mongo = new Mongo("localhost", 27017);
DB db = mongo.getDB("liuchao");
char[] pwd_char = "liuchao".toCharArray();
boolean auth = db.authenticate("liuchao",pwd_char);//登陸驗證,成功之后才能進行有效操作
if(!auth){
throw new RuntimeException();
}
return db.getCollection(colName);
} catch (UnknownHostException e) {
e.printStackTrace();
return null;
}
}
public static void main(String[] args) {
System.out.println(getDBConnectionWithAuth("users"));
System.out.println(getDBConnectionWithoutAuth("users"));
}
}
基本增刪改查操作類:
package com.liuc.db;
import java.util.ArrayList;
import java.util.List;
import com.mongodb.BasicDBObject;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
/**
*
* @brief MognoDBCURDUtil.java 增刪改查工具類
* @attention 使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public class MognoDBCURDUtil {
/**
*
* \brief查詢所有數據
*
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
private static void queryAll(String collectionName) {
DBCollection users = MongoDBUtil
.getDBConnectionWithAuth(collectionName);
// db游標
DBCursor cur = users.find();
System.out.println("數據總條數:" + users.count());
while (cur.hasNext()) {
System.out.println(cur.next());
}
}
/**
*
* \brief 添加數據
*
* @param collectionName
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明 save和insert的區別
* save函數實際就是根據參數條件,調用了insert或update函數.
* 如果想插入的數據對象存在,insert函數會報錯,而save函數是改變原來的對象;
* 如果想插入的對象不存在,那么它們執行相同的插入操作. 這里可以用幾個字來概括它們兩的區別,即所謂"有則改之,無則加之".
*/
public static void add(String collectionName, Listlist) {
DBCollection users = MongoDBUtil
.getDBConnectionWithAuth(collectionName);
users.insert(list).getN();
}
/**
*
* \brief 更新
* @param collectionName
* @param source
* @param target
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public static void update(String collectionName, DBObject source,
DBObject target) {
DBCollection users = MongoDBUtil
.getDBConnectionWithAuth(collectionName);
/**
* true,//如果數據庫不存在,是否添加
false//多條修改
*/
users.update(source, target, true, false);
}
/**
*
* \brief 刪除
* @param collectionName
* @param obj
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public static void delete(String collectionName, DBObject delObj) {
DBCollection users = MongoDBUtil
.getDBConnectionWithAuth(collectionName);
users.remove(delObj);
//print("remove age >= 24: " + users.remove(new BasicDBObject("age", new BasicDBObject("$gte", 24))).getN());
}
/**
*
* \brief 帶條件查詢
* @param collectionName
* @param delObj
* @attention 方法的使用注意事項
* @author liuchao
* @date 2013-12-30
* @note begin modify by 修改人 修改時間 修改內容摘要說明
*/
public static void queryWithCondition(String collectionName, DBObject condition) {
DBCollection users = MongoDBUtil
.getDBConnectionWithAuth(collectionName);
//users.find(new BasicDBObject("_id", new ObjectId("4de73f7acd812d61b4626a77"))).toArray()
users.find(condition);
}
}
代碼下載:http://download.csdn.net/detail/shanhuhau/6788957
本文原創發布php中文網,轉載請注明出處,感謝您的尊重!
總結
以上是生活随笔為你收集整理的java mongodb 增删改查_java操作mongodb:基本的增删改查的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序支付java视频_【原创】微信
- 下一篇: java 会话跟踪技术_JavaEE基础