Java操做MongoDB之mongodb-driver

mongodb-driver是mongo官方推出的java鏈接mongoDB的驅動包,至關於JDBC驅動。
經過一個入門的案例來了解mongodb-driver的基本使用:java

一、查詢所有記錄

1.一、建立工程mongoDemo,引入依賴

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

1.二、建立測試類

public class MongoDemo1 {
    public static void main(String[] args) {
        // 建立鏈接
        MongoClient client = new MongoClient("192.168.206.128");
        // 打開數據庫spitdb
        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是基本一致的。web

2.一、查詢userid爲1013的記錄

public class MongoDemo1 {
    public static void main(String[] args) {
        // 建立鏈接
        MongoClient client = new MongoClient("192.168.206.128");
        // 打開數據庫spitdb
        MongoDatabase spitdb = client.getDatabase("spitdb");
        // 獲取集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");

        // 構建查詢條件,經過userid進行查詢
        BasicDBObject bson = new BasicDBObject("userid", "1013");

        // 經過userid查詢記錄獲取文檔集
        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.206.128");
        // 打開數據庫spitdb
        MongoDatabase spitdb = client.getDatabase("spitdb");
        // 獲取集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");

        // 構建查詢條件,查詢visits大於1000的結果
        BasicDBObject bson = new BasicDBObject("visits", new BasicDBObject("$gt", 1000));

        // 經過userid查詢記錄獲取文檔集
        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.206.128");
        // 打開數據庫spitdb
        MongoDatabase spitdb = client.getDatabase("spitdb");
        // 獲取集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");

        // 準備數據
        HashMap<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();
    }
}
相關文章
相關標籤/搜索