資料庫——MongoDB——>Java篇

bzt820801發表於2017-08-14

mongoDB

     MongoDB是一個基於分散式檔案儲存的資料庫。由C++語言編寫。旨在為WEB應用提供可擴充套件的高效能資料儲存解決方案。
     MongoDB  是一個介於關聯式資料庫和非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫的。他支援的資料結構非常鬆散,是類似json的bson格式,因此可以儲存比較複雜的資料型別。Mongo最大的特點是他支援的查詢語言非常強大,其語法有點類似於物件導向的查詢語言,幾乎可以實現類似關聯式資料庫單表查詢的絕大部分功能,而且還支援對資料建立索引

什麼是MongoDB ?

MongoDB 是由C++語言編寫的,是一個基於分散式檔案儲存的開源資料庫系統。

在高負載的情況下,新增更多的節點,可以保證伺服器效能。

MongoDB 旨在為WEB應用提供可擴充套件的高效能資料儲存解決方案。

MongoDB 將資料儲存為一個文件,資料結構由鍵值(key=>value)對組成。MongoDB 文件類似於 JSON 物件。欄位值可以包含其他文件,陣列及文件陣列。

 

主要特點

  • MongoDB的提供了一個面向文件儲存,操作起來比較簡單和容易。
  • 你可以在MongoDB記錄中設定任何屬性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road")來實現更快的排序。
  • 你可以通過本地或者網路建立資料映象,這使得MongoDB有更強的擴充套件性。
  • 如果負載的增加(需要更多的儲存空間和更強的處理能力) ,它可以分佈在計算機網路中的其他節點上這就是所謂的分片。
  • Mongo支援豐富的查詢表示式。查詢指令使用JSON形式的標記,可輕易查詢文件中內嵌的物件及陣列。
  • MongoDb 使用update()命令可以實現替換完成的文件(資料)或者一些指定的資料欄位 。
  • Mongodb中的Map/reduce主要是用來對資料進行批量處理和聚合操作。
  • Map和Reduce。Map函式呼叫emit(key,value)遍歷集合中所有的記錄,將key與value傳給Reduce函式進行處理。
  • Map函式和Reduce函式是使用Javascript編寫的,並可以通過db.runCommand或mapreduce命令來執行MapReduce操作。
  • GridFS是MongoDB中的一個內建功能,可以用於存放大量小檔案。
  • MongoDB允許在服務端執行指令碼,可以用Javascript編寫某個函式,直接在服務端執行,也可以把函式的定義儲存在服務端,下次直接呼叫即可。
  • MongoDB支援各種程式語言:RUBY,PYTHON,JAVA,C++,PHP,C#等多種語言。
  • MongoDB安裝簡單。

用Java操作MongoDB資料庫

  1. windows下MongoDB的安裝及配置

  2. 匯入MongoDB的jar包:mongo-java-driver-3.2.2.jar
    • 先建立一個資料夾,將jar包放入其中,一般取名為lib;
    • 右擊jar包出現點選build path——>點選add to build path;這樣就完成了jar包匯入
  3. 還需要匯入json的jar包:json-lib-2.4-jdk15.jar,跟上面一樣,主要作用是解析MongoDB資料鍵值對

程式碼演示:

    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
    MongoClient mClient=new MongoClient("localhost",27017);//連線MongoDB資料庫 本地+埠號
     MongoDatabase mDatabase=mClient.getDatabase("myta"); //連線資料庫
     MongoCollection<Document> mCollection=mDatabase.getCollection("mydb");//得到這個資料庫下的資料集,類似表一樣
   FindIterable<Document> iterable  = mCollection.find();//建立查詢,查詢資料集下的所有
    MongoCursor<Document> cursor=iterable.iterator();// 迭代這個資料集,放入遊標中
    while (cursor.hasNext()) {//遍歷這個遊標
        JSONObject jObject=new JSONObject(cursor.toString());//用json解析MongoDB的鍵值對
         Object object=    jObject.getString("name");//得到想要的資料的鍵,輸出值
        System.out.println(object);    
        } 
    }

這個需要你的環境配置都OK了,多注意一下環境的配置和jar包的匯入,程式碼不會錯

個人覺得Studio 3T這個MongoDB的視覺化工具還不錯下載地址

相關文章