Java操作MongoDB

一. mongodb-driver

mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。

例如:

创建工程,引入依赖

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

创建测试类:简单查询

/**
 * @program: mongoDBTest
 * @description: mongoDB测试:简单查询
 * @author: YuKai Fan
 * @create: 2019-04-19 16:57
 **/
public class MongoDBTest {

    public static void main(String[] args) {
        //连接mongo服务器
        MongoClient client = new MongoClient("192.168.249.128");
        //得到要操作的数据库
        MongoDatabase spitdb = client.getDatabase("spitdb");
        //得到要操作的集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");
        //得到集合中所有的文档
        FindIterable<Document> documents = spit.find();
        //遍历数据
        for (Document document : documents) {
            System.out.println("内容:" + document.get("content"));
            System.out.println("访问量:" + document.get("visits"));
        }

        client.close();

    }
}

结果:

 

条件复杂查询:

/**
 * @program: mongoDBTest
 * @description: mongoDB测试:条件查询查询 ,复杂查询
 * @author: YuKai Fan
 * @create: 2019-04-19 16:57
 **/
public class MongoDBTest {

    public static void main(String[] args) {
        //连接mongo服务器
        MongoClient client = new MongoClient("192.168.249.128");
        //得到要操作的数据库
        MongoDatabase spitdb = client.getDatabase("spitdb");
        //得到要操作的集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");

        //封装条件查询
        //BasicDBObject bson = new BasicDBObject("content","最近有冷");

        //封装条件查询 查询访问量大于2000的数据 find({"visits":{$gt,2000}})
        BasicDBObject bson = new BasicDBObject("visits",new BasicDBObject("$gt", 2000));


        //得到集合中所有的文档
        FindIterable<Document> documents = spit.find(bson);
        //遍历数据
        for (Document document : documents) {
            System.out.println("内容:" + document.get("content"));
            System.out.println("访问量:" + document.get("visits"));
        }

        client.close();

    }
}

添加数据:

/**
 * @program: mongoDBTest
 * @description: mongoDB测试:添加数据
 * @author: YuKai Fan
 * @create: 2019-04-19 16:57
 **/
public class MongoDBTest {

    public static void main(String[] args) {
        //连接mongo服务器
        MongoClient client = new MongoClient("192.168.249.128");
        //得到要操作的数据库
        MongoDatabase spitdb = client.getDatabase("spitdb");
        //得到要操作的集合
        MongoCollection<Document> spit = spitdb.getCollection("spit");

        //添加记录
        Map<String, Object> map = new HashMap<String, Object>();
        map.put("content", "时间过得好快");
        map.put("userid", "1016");
        map.put("visits", 1000);
        Document document = new Document(map);
        spit.insertOne(document);

        client.close();

    }
}

结果:

 

posted @ 2019-04-19 17:18  MichaelKai  阅读(85)  评论(0)    收藏  举报