程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java操作mongodb完成CURD功效實例

java操作mongodb完成CURD功效實例

編輯:關於JAVA

java操作mongodb完成CURD功效實例。本站提示廣大學習愛好者:(java操作mongodb完成CURD功效實例)文章只能為提供參考,不一定能成為您想要的結果。以下是java操作mongodb完成CURD功效實例正文


先下載響應的驅動:官網高低載:http://central.maven.org/maven2/org/mongodb/mongo-java-driver/
本文應用mongo-2.10.1.jar版本:

上面有具體代碼的,每一個辦法可以零丁履行。個中為了便利運轉,每一個辦法中都從新鏈接數據庫,而沒有再提出來,由於在此的目標是為了熟悉mongodb罷了。


package com.mongo.dao;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;

/**
* 對根本實體的存儲測試
* @author lhy
*
*/
public class EntityTest {

     public static void main(String[] args) throws Exception{
          delete();
     }

     /**
     * 保留實體對象
     * @throws Exception
     */
     public static void saveEntity() throws Exception{
          //第一:實例化mongo對象,銜接mongodb辦事器  包括一切的數據庫

          //默許結構辦法,默許是銜接本機,端標語,默許是27017
          //相當於Mongo mongo =new Mongo("localhost",27017)
          Mongo mongo =new Mongo();

          //第二:銜接詳細的數據庫
          //個中參數是詳細數據庫的稱號,若辦事器中不存在,會主動創立
          DB db=mongo.getDB("myMongo");

          //第三:操作詳細的表
         //在mongodb中沒有表的概念,而是指聚集
          //個中參數是數據庫中表,若不存在,會主動創立
          DBCollection collection=db.getCollection("user");

          //添加操作
          //在mongodb中沒有行的概念,而是指文檔
          BasicDBObject document=new BasicDBObject();

          document.put("id", 1);
          document.put("name", "小明");
//          //然後保留到聚集中
//     //     collection.insert(document);

        
          //固然我也能夠保留如許的json串
/*          {
               "id":1,
               "name","小明",
               "address":
               {
               "city":"beijing",
               "code":"065000"
               }
          }*/
          //完成上述json串思緒以下:
          //第一種:相似xml時,赓續添加
          BasicDBObject addressDocument=new BasicDBObject();
          addressDocument.put("city", "beijing");
          addressDocument.put("code", "065000");
          document.put("address", addressDocument);
          //然後保留數據庫中
          collection.insert(document);

          //第二種:直接把json存到數據庫中
/*          String jsonTest="{'id':1,'name':'小明',"+
                   "'address':{'city':'beijing','code':'065000'}"+
                    "}";
         DBObject dbobjct=(DBObject)JSON.parse(jsonTest);
         collection.insert(dbobjct);*/   
     }

     /**
     * 遍歷一切的
     * @throws Exception
     */
     public static void selectAll() throws Exception{
          //第一:實例化mongo對象,銜接mongodb辦事器  包括一切的數據庫

          //默許結構辦法,默許是銜接本機,端標語,默許是27017
          //相當於Mongo mongo =new Mongo("localhost",27017)
          Mongo mongo =new Mongo();

          //第二:銜接詳細的數據庫
          //個中參數是詳細數據庫的稱號,若辦事器中不存在,會主動創立
          DB db=mongo.getDB("myMongo");

          //第三:操作詳細的表
         //在mongodb中沒有表的概念,而是指聚集
          //個中參數是數據庫中表,若不存在,會主動創立
          DBCollection collection=db.getCollection("user");

          //查詢操作
          //查詢一切
          //個中相似access數據庫中游標概念
          DBCursor cursor=collection.find();
          System.out.println("mongodb中的user表成果以下:");
          while(cursor.hasNext()){
               System.out.println(cursor.next());
          }
     }

     /**
     * 依據前提查詢
     * @throws Exception
     */
     public static void selectPart() throws Exception{
          //第一:實例化mongo對象,銜接mongodb辦事器  包括一切的數據庫

          //默許結構辦法,默許是銜接本機,端標語,默許是27017
          //相當於Mongo mongo =new Mongo("localhost",27017)
          Mongo mongo =new Mongo();

          //第二:銜接詳細的數據庫
          //個中參數是詳細數據庫的稱號,若辦事器中不存在,會主動創立
          DB db=mongo.getDB("myMongo");

          //第三:操作詳細的表
         //在mongodb中沒有表的概念,而是指聚集
          //個中參數是數據庫中表,若不存在,會主動創立
          DBCollection collection=db.getCollection("user");

   
          //可以直接put
          BasicDBObject queryObject=new BasicDBObject();
          queryObject.put("id", 1);
          DBCursor querycursor=collection.find(queryObject);
          System.out.println("前提查詢以下:");
          while(querycursor.hasNext()){
               System.out.println(querycursor.next());
          }
     }

     /**
     * 更新操作
     * 更新一筆記錄
     * @throws Exception
     */
     public static void update()throws Exception{
          //第一:實例化mongo對象,銜接mongodb辦事器  包括一切的數據庫

          //默許結構辦法,默許是銜接本機,端標語,默許是27017
          //相當於Mongo mongo =new Mongo("localhost",27017)
          Mongo mongo =new Mongo();

          //第二:銜接詳細的數據庫
          //個中參數是詳細數據庫的稱號,若辦事器中不存在,會主動創立
          DB db=mongo.getDB("myMongo");

          //第三:操作詳細的表
         //在mongodb中沒有表的概念,而是指聚集
          //個中參數是數據庫中表,若不存在,會主動創立
          DBCollection collection=db.getCollection("user");

          //更新後的對象
//          第一種更新方法
          BasicDBObject newBasicDBObject =new BasicDBObject();
          newBasicDBObject.put("id", 2);
          newBasicDBObject.put("name", "小紅");
          collection.update(new BasicDBObject().append("id", 1),newBasicDBObject);

//          第二種更新方法
//          更新某一個字段
//          BasicDBObject newBasicDBObject =new BasicDBObject().append("$set",new BasicDBObject().append("name", "小紅") );
//          collection.update(new BasicDBObject().append("id", 1).append("name", "小明"),newBasicDBObject);

        
          DBCursor querycursor1=collection.find();
          System.out.println("更新後成果以下:");
          while(querycursor1.hasNext()){
               System.out.println(querycursor1.next());
          }
     }

     /**
     * 刪除文檔,個中包含刪除全體或刪除部門
     * @throws Exception
     */
     public static void delete() throws Exception{

          //第一:實例化mongo對象,銜接mongodb辦事器  包括一切的數據庫

          //默許結構辦法,默許是銜接本機,端標語,默許是27017
          //相當於Mongo mongo =new Mongo("localhost",27017)
          Mongo mongo =new Mongo();

          //第二:銜接詳細的數據庫
          //個中參數是詳細數據庫的稱號,若辦事器中不存在,會主動創立
          DB db=mongo.getDB("myMongo");

          //第三:操作詳細的表
         //在mongodb中沒有表的概念,而是指聚集
          //個中參數是數據庫中表,若不存在,會主動創立
          DBCollection collection=db.getCollection("user");
          BasicDBObject queryObject1=new BasicDBObject();
          queryObject1.put("id", 2);
          queryObject1.put("name","小紅");

          //刪除某一筆記錄
         collection.remove(queryObject1);
          //刪除全體
          //collection.drop();

          DBCursor cursor1=collection.find();
          System.out.println("刪除後的成果以下:");
          while(cursor1.hasNext()){
               System.out.println(cursor1.next());
          }

   
     }

   
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved