qiyadeng

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

          Java和MongoDB之Hello World

          Posted on 2013-03-19 22:17 qiyadeng 閱讀(2200) 評論(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




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


          網站導航:
           
          主站蜘蛛池模板: 赤城县| 水城县| 阳曲县| 义马市| 乌鲁木齐市| 香港| 启东市| 社旗县| 池州市| 蒙阴县| 开平市| 东宁县| 调兵山市| 盖州市| 囊谦县| 黑水县| 鱼台县| 公主岭市| 探索| 大埔县| 九江市| 嘉黎县| 全南县| 永胜县| 双江| 蓬莱市| 东安县| 西宁市| 肇州县| 胶南市| 九寨沟县| 双柏县| 杭州市| 黄石市| 阿坝县| 梁平县| 澄迈县| 永新县| 平湖市| 保德县| 博乐市|