Java操作MongoDB

mongodb-driver

mongodb-driver是mongo官方推出的java連接mongoDB的驅動包,相當於JDBC驅動。
我們通過一個入門的案例來了解mongodb-driver的基本使用
引入pom依賴

<dependencies>
    <dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongodb‐driver</artifactId>
        <version>3.6.3</version>
    </dependency>
  </dependencies>

查詢全部記錄

創建測試類

/**
 * MongoDb入門小demo
 */
public class MongoDemo {
    public static void main(String[] args) {
        MongoClient client=new MongoClient("192.168.184.134");//創建連接
        MongoDatabase spitdb = client.getDatabase("spitdb");//打開數據庫
        MongoCollection<Document> spit = spitdb.getCollection("spit");//
獲取集合
        FindIterable<Document> documents = spit.find();//查詢記錄獲取文檔集for(Document document:documents){ //
            System.out.println("內容:"+  document.getString("content"));
            System.out.println("用戶ID:"+document.getString("userid"));
            System.out.println("瀏覽量:"+document.getInteger("visits"));
        }
        client.close();//關閉連接
    }
}

條件查詢

BasicDBObject對象:表示一個具體的記錄,BasicDBObject實現了DBObject,是key-
value的數據結構,用起來和HashMap是基本一致的。
(1)查詢userid爲1013的記錄

public class MongoDemo1 {
    public static void main(String[] args) {
        MongoClient client=new MongoClient("192.168.184.134");//創建連接
        MongoDatabase spitdb = client.getDatabase("spitdb");//打開數據庫
        MongoCollection<Document> spit = spitdb.getCollection("spit");//
獲取集合
        BasicDBObject bson=new BasicDBObject("userid","1013");// 構建查詢
條件
        FindIterable<Document> documents = spit.find(bson);//查詢記錄獲取結
果集合
        for(Document document:documents){ //
            System.out.println("內容:"+  document.getString("content"));
            System.out.println("用戶ID:"+document.getString("userid"));
            System.out.println("瀏覽量:"+document.getInteger("visits"));
        }
        client.close();//關閉連接
    }
}

(2)查詢瀏覽量大於1000的記錄

public class MongoDemo2 {
    public static void main(String[] args) {
        MongoClient client=new MongoClient("192.168.184.134");//創建連接
        MongoDatabase spitdb = client.getDatabase("spitdb");//打開數據庫
        MongoCollection<Document> spit = spitdb.getCollection("spit");//
獲取集合
        BasicDBObject bson=new BasicDBObject("visits",new
BasicDBObject("$gt",1000) );// 構建查詢條件
       
        FindIterable<Document> documents = spit.find(bson);//查詢記錄獲取結
果集合
        for(Document document:documents){ //
            System.out.println("內容:"+  document.getString("content"));
            System.out.println("用戶ID:"+document.getString("userid"));
            System.out.println("瀏覽量:"+document.getInteger("visits"));
        }
        client.close();//關閉連接
    }
}

插入數據

public class MongoDemo3 {
    public static void main(String[] args) {
        MongoClient client=new MongoClient("192.168.184.134");//創建連接
        MongoDatabase spitdb = client.getDatabase("spitdb");//打開數據庫
        MongoCollection<Document> spit = spitdb.getCollection("spit");//
獲取集合
        Map<String,Object> map=new HashMap();
        map.put("content","我要吐槽");
        map.put("userid","9999");
        map.put("visits",123);
        map.put("publishtime",new Date());
        Document document=new Document(map);
        spit.insertOne(document);//插入數據
        client.close();
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章