zoukankan      html  css  js  c++  java
  • Java操作MongoDB之mongodb-driver

    mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。
    通过一个入门的案例来了解mongodb-driver的基本使用:

    1、查询全部记录

    1.1、创建工程mongoDemo,引入依赖

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

    1.2、创建测试类

    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();
        }
    }
    

    2、条件查询

    BasicDBObject对象:表示一个具体的记录,BasicDBObject实现了DBObject,是key/value的数据结构,用起来和HashMap是基本一致的。

    2.1、查询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.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();
        }
    }
    

    3、插入数据

    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();
        }
    }
    
  • 相关阅读:
    C# Nugut CsvHelper 使用
    C# 读写txt
    Js打开QQ聊天对话窗口
    Js 读写Cookies
    js 计算时间差
    C# 读取CSV文件
    使用 SqlBulkCopy 批量插入数据
    sql 添加列并设置默认值
    C# 获取Enum 描述和值集合
    SQL连接其它服务器操作
  • 原文地址:https://www.cnblogs.com/tian-ci/p/10543060.html
Copyright © 2011-2022 走看看