qiyadeng

          專注于Java示例及教程
          posts - 84, comments - 152, trackbacks - 0, articles - 34

          Java和MongoDB之Hello World

          Posted on 2013-03-19 22:17 qiyadeng 閱讀(2199) 評論(0)  編輯  收藏

          1.新建Project

          新建Java Project,并把mongo-java-driver驅動加入到項目bulid path中,如果你使用的是maven增加依賴。


                <dependency>
                    
          <groupId>org.mongodb</groupId>
                    
          <artifactId>mongo-java-driver</artifactId>
                    
          <version>2.10.1</version>
                
          </dependency>

          2.連接上MongoDB

          //>2.10版本
          MongoClient mongo = new MongoClient( "localhost" , 27017 );

          //老版本  
          Mongo mongo = new Mongo("localhost"27017);

          如果需要驗證,需要輸入用戶名和密碼


              MongoClient mongoClient = new MongoClient();
              DB db 
          = mongoClient.getDB("database name");
              
          boolean auth = db.authenticate("username""password".toCharArray());
          3.MongoDB數據庫

          得到MongoDB中的數據庫,如果數據庫名不存在,MongoDB會自動創建


          DB db = mongo.getDB("database name");
          顯示所有的數據庫
              List<String> dbs = mongo.getDatabaseNames();
              
          for(String db : dbs){
                  System.out.println(db);
              }
          4.MongoDB Collection(MongoDB表)

          得到數據庫中的表

              DB db = mongo.getDB("testdb");
              DBCollection table 
          = db.getCollection("user");
          顯示數據庫中的所有表
              DB db = mongo.getDB("testdb");
              Set
          <String> tables = db.getCollectionNames();
           
              
          for(String coll : tables){
                  System.out.println(coll);
              }
          5.插入、查找、更新、刪除操作

          插入數據,向Collection(表)中插入一個Document

              DBCollection table = db.getCollection("user");
              BasicDBObject document 
          = new BasicDBObject();
              document.put(
          "name""qiyadeng");
              document.put(
          "age"30);
              document.put(
          "createdDate"new Date());
              table.insert(document);
          更新Document中的name="qiyadeng.com"
          	
              DBCollection table = db.getCollection("user");

               BasicDBObject query 
          = new BasicDBObject();
              query.put(
          "name""qiyadeng");

              BasicDBObject newDocument 
          = new BasicDBObject();
              newDocument.put(
          "name""qiyadeng.com");

              BasicDBObject updateObj 
          = new BasicDBObject();
              updateObj.put(
          "$set", newDocument);
           
              table.update(query, updateObj);
          從Collection中查找name="qiyadeng.com"的Document
              DBCollection table = db.getCollection("user");
           
              BasicDBObject searchQuery 
          = new BasicDBObject();
              searchQuery.put(
          "name""qiyadeng.com");
           
              DBCursor cursor 
          = table.find(searchQuery);
           
              
          while (cursor.hasNext()) {
                  System.out.println(cursor.next());
              }
          刪除name="qiyadeng"的Document
              DBCollection table = db.getCollection("user");
           
              BasicDBObject searchQuery 
          = new BasicDBObject();
              searchQuery.put(
          "name""qiyadeng.com");
           
              table.remove(searchQuery);

          6.完整的例子
          package com.qiyadeng.mongodb;


          import java.util.Date;

          import com.mongodb.BasicDBObject;
          import com.mongodb.DB;
          import com.mongodb.DBCollection;
          import com.mongodb.DBCursor;
          import com.mongodb.MongoClient;

          public class MongoDBSample {

              
          public static void main(String[] args) throws Exception{
                       
                      
          /**** Connect to MongoDB ****/
                      
          //2.10.0后,使用MongoClient
                      MongoClient mongo = new MongoClient("localhost"27017);
                   
                      
          /**** Get database ****/
                      
          // if database doesn't exists, MongoDB will create it for you
                      DB db = mongo.getDB("testdb");
                   
                      
          /**** Get collection / table from 'testdb' ****/
                      
          // if collection doesn't exists, MongoDB will create it for you
                      DBCollection table = db.getCollection("user");
                   
                      
          /**** Insert ****/
                      
          // create a document to store key and value
                      BasicDBObject document = new BasicDBObject();
                      document.put(
          "name""qiyadeng");
                      document.put(
          "age"30);
                      document.put(
          "createdDate"new Date());
                      table.insert(document);
                   
                      
          /**** Find and display ****/
                      BasicDBObject searchQuery 
          = new BasicDBObject();
                      searchQuery.put(
          "name""qiyadeng");
                   
                      DBCursor cursor 
          = table.find(searchQuery);
                   
                      
          while (cursor.hasNext()) {
                          System.out.println(cursor.next());
                      }
                   
                      
          /**** Update ****/
                      
          // search document where name="qiyadeng" and update it with new values
                      BasicDBObject query = new BasicDBObject();
                      query.put(
          "name""qiyadeng");
                   
                      BasicDBObject newDocument 
          = new BasicDBObject();
                      newDocument.put(
          "name""qiyadeng.com");
                   
                      BasicDBObject updateObj 
          = new BasicDBObject();
                      updateObj.put(
          "$set", newDocument);
                   
                      table.update(query, updateObj);
                   
                      
          /**** Find and display ****/
                      BasicDBObject searchQuery2 
                          
          = new BasicDBObject().append("name""qiyadeng.com");
                   
                      DBCursor cursor2 
          = table.find(searchQuery2);
                   
                      
          while (cursor2.hasNext()) {
                          System.out.println(cursor2.next());
                      }
              }
          }


          輸出

          "_id" : { "$oid" : "51444c88874c79654063356b"} , "name" : "qiyadeng" , "age" : 30 , "createdDate" : { "$date" : "2013-03-16T10:42:16.555Z"}}
          "_id" : { "$oid" : "51444c88874c79654063356b"} , "age" : 30 , "createdDate" : { "$date" : "2013-03-16T10:42:16.555Z"} , "name" : "qiyadeng.com"}

          使用mongo驗證創建的數據庫testdb,collection user是否存在。


          原創文章,轉載請注明: 轉載自http://www.qiyadeng.com/

          本文鏈接地址: Java和MongoDB之Hello World




          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 岳西县| 宜兰县| 鹿泉市| 壶关县| 团风县| 衡东县| 镇坪县| 屯昌县| 竹溪县| 汨罗市| 连城县| 额济纳旗| 随州市| 灯塔市| 呈贡县| 赤壁市| 永宁县| 黄梅县| 大关县| 乐平市| 桂东县| 于田县| 泰兴市| 同德县| 凤城市| 霍邱县| 中山市| 水富县| 巴青县| 财经| 河西区| 平阳县| 孝义市| 常山县| 江山市| 长海县| 屏东市| 台北县| 韶山市| 巫山县| 南城县|