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.     }  
相關文章
相關標籤/搜索