作者:yanghuimin | 来源:互联网 | 2014-05-28 16:53
MongoDBJava通用方法最近写了一个针对MongoDB的一些常用操作的公共类,希望对初学者有帮助。packagemodel.dao;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;
MongoDB Java 通用方法 最近写了一个针对MongoDB的一些常用操作的公共类,希望对初学者有帮助。
package model.dao;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import org.bson.types.ObjectId;
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;
/**
* MongoDB Manager
* @author Ken Chau
*
*/
public class MongoDBManager {
private static Logger log = Logger.getLogger(MongoDBManager.class);
private static Mongo mg = null;
private static DB db = null;
private final static MongoDBManager instance = new MongoDBManager();
/**
* 实例化
* @return
* @throws Exception
*/
public static MongoDBManager getInstance() throws Exception {
return instance;
}
static {
try {
mg = new Mongo(HOST, PORT);
db=mg.getDB(DB);
} catch (Exception e) {
log.error("Can't connect MongoDB!");
e.printStackTrace();
}
}
/**
* 获取集合(表)
* @param collection
*/
public static DBCollection getCollection(String collection) {
return db.getCollection(collection);
}
/**
* ----------------------------------分割线--------------------------------------
*/
/**
* 插入
* @param collection
* @param map
*/
public void insert(String collection , Map
map) {
try {
DBObject dbObject = map2Obj(map);
getCollection(collection).insert(dbObject);
} catch (MongoException e) {
log.error("MongoException:" + e.getMessage());
}
}
/**
* 批量插入
* @param collection
* @param list
*/
public void insertBatch(String collection ,List