MongoDB 连接

package com.cdel.portal.core.mongo;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.net.UnknownHostException;
import java.util.List;
import java.util.Properties;

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 MongoDBManager {

/**    
* 连接池
*/
private static  Mongo mg = null;
/**
* you can think it is similar to connection
*/
private static DB db;

// private static final String dbAddress="192.168.190.49";
// private static final int dbPort=27017;
// private static final String dbName="lectureDB";

static{
try {
InputStream is = MongoDBManager.class.getClassLoader().getResourceAsStream("mongDB.properties");
Properties p = new Properties();
p.load(is);

Integer dbPort = Integer.parseInt((String)p.get( "dbPort")  );
mg = new Mongo( (String)p.get( "dbAddress")  ,dbPort );
db = mg.getDB((String) p.get("dbName") );
is.close();
} catch (Exception e) {
e.printStackTrace();


}
public  MongoDBManager() throws UnknownHostException, MongoException{

// users = db.getCollection("users");
}

/**
*  根据 集合的名字 得到集合对象
* @param collectionName
* @return
*/
public   DBCollection  getCollection(final String collectionName ){
return db.getCollection( collectionName);
}

/**
*
* @param dbCollection
* @param dbObject 添加数据
*/

public   void  AdddOneData(DBCollection dbCollection, DBObject dbObject){
dbCollection.insert( dbObject );
}


/**
*
* @param collection
* @param dbCondition  删除数据的条件
*/
    public  void  remove(DBCollection collection ,DBObject dbCondition ){
    collection.remove( dbCondition ); 
    }
   
    /**
     * 更新数据
     * @param collection
     * @param updateCondition 根据这个条件  所要  更新的的数据
     * @param updateResult   数据 更新后的结果
     */
   
    public  void  update(DBCollection collection,DBObject  updateCondition  ,DBObject updateResult ){
   
          collection.update( updateCondition , updateResult ,false,false ); 
    }

    /**
     * 根据条件查询 相应的数据
     * @param collection
     * @return
     */ 
    public  List<DBObject>  queryByCondition(DBCollection collection,DBObject  condition    ){
        return   collection.find(condition).toArray(); 
    }


    /**
     * 取得查询结果集
     * @param collection
     * @return
     */ 
    private  static DBCursor getResult(DBCollection collection){ 
        return collection.find(); 
    } 


   
//    /**
//     * 打印结果数据
//     * @param description 结果数据相关描述
//     * @param recordResult 结果集
//     */ 
//    private static void printData(String description,DBCursor recordResult){ 
//        System.out.println(description); 
//        for(Iterator<DBObject> iter=recordResult.iterator();iter.hasNext();){ 
//            System.out.println(iter.next()); 
//        } 
//    }  
//   
// public DB getDb() {
// return db;
// }
//
// public void setDb(DB db) {
// this.db = db;
// }
//
public static void main(String[] args) throws UnknownHostException, MongoException {
MongoDBManager  mongoDBUtil = new MongoDBManager();
DBCollection con = mongoDBUtil.getCollection( "col_lecture");

DBObject lectureObject=new BasicDBObject();
lectureObject.put("kcjyID",44 );

lectureObject.put("jyContent","讲义主体部分" );
mongoDBUtil.AdddOneData(con , lectureObject );



// DBObject lectureObject2 = new BasicDBObject();
//
// lectureObject2.put("kcjyID",111 );
// lectureObject2.put("jyContent","讲义主体部分1111" );
//
// con.update( lectureObject , lectureObject2 ,true,true );
//
// mongoDBUtil.update( con , lectureObject, lectureObject2);
//
// mongoDBUtil.remove( con, lectureObject );
// con.remove( lectureObject  ); 
//
//
// List<DBObject> list = mongoDBUtil.queryByCondition(con , lectureObject   );
// for( int i=0 ;i<list.size();i++ ){
// DBObject obj = list.get(i);
// System.out.println( obj.get("kcjyID"));
// System.out.println( obj.get("jyContent"));
// }
// printData("删除pig后的所有结果记录为:",getResult(mongoDBUtil.getDb().getCollection("col_lecture")));
}
}



也可以 继承到spring中 。


附件中是自己整理的MongoDB的使用文档,仅供参考

猜你喜欢

转载自username2.iteye.com/blog/1574724
今日推荐