MongoDB操作:insert()

  1. @Override  
  2. public boolean inSert(String dbName, String collectionName, String[] keys,
  3. Object[] values) {  
  4.    DB db = null;  
  5.    DBCollection dbCollection = null;  
  6.    WriteResult result = null;  
  7.    String resultString = null;  
  8.    if(keys!=null && values!=null){      
  9.    //keys与values都不是空的时候才可以执行插入操作  
  10.        if(keys.length != values.length){
  11.        //keys与values是一一对应的关系,数目必须相等  
  12.            return false;  
  13.        }else{  
  14.            db = mongoClient.getDB(dbName); 
  15.            //获取数据库实例  
  16.            dbCollection = db.getCollection(collectionName);   
  17.            //获取数据库中指定的collection集合  
  18.            BasicDBObject insertObj = new BasicDBObject();  
  19.            //MongoDB中的基本对象,它是对DBObject的实现,继承自BasicBSONObject
  20.            /*
  21.            *public class BasicDBObject extends BasicBSONObject implements DBObject
    */
  22.            for(int i=0; i<keys.length; i++){    
  23.            //构建添加条件  
  24.            insertObj.put(keys[i], values[i]); 
  25.            //输入k-v对 
  26.             }  
  27.                   
  28.          try {  
  29.                result = dbCollection.insert(insertObj);
  30.                //将对象插入到文档Collection中  
  31.                resultString = result.getError(); 
  32.                //将写操作结果WriteResult传递给resultString,以方便显示 
  33.               } catch (Exception e) {  
  34.                // TODO: handle exception  
  35.                 e.printStackTrace();  
  36.               }finally{  
  37.                  if(null != db){
  38.                  //如果数据库不为空,则表示已经插入数据(数据库原来初始化为null)  
  39.                     db.requestDone();  
  40.                     //请求结束后关闭db(即停止继续执行“request”操作)  
  41.                   }  
  42.               }                 
  43.                 return (resultString != null) ? false : true;  
  44.             }  
  45.         }  
  46.         return false;  
  47.     }  
posted @ 2015-03-12 23:00  程序员姜戈  阅读(1779)  评论(0编辑  收藏  举报