zoukankan      html  css  js  c++  java
  • MongoDB快速入门学习笔记8 MongoDB的java驱动操作

    import java.util.ArrayList;
    import java.util.List;
    import java.util.regex.Pattern;
    
    import org.bson.Document;
    
    import com.mongodb.MongoClient;
    import com.mongodb.MongoCredential;
    import com.mongodb.ServerAddress;
    import com.mongodb.client.FindIterable;
    import com.mongodb.client.MongoCollection;
    import com.mongodb.client.MongoCursor;
    import com.mongodb.client.MongoDatabase;
    
    public class MongoZyh {
    
        public static void main(String[] args) {
    
            try {
                // 连接到MongoDB服务,ServerAddress()两个参数分别为 服务器地址 和 端口
                ServerAddress serverAddress = new ServerAddress("localhost", 27017);
                List<ServerAddress> addrs = new ArrayList<ServerAddress>();
                addrs.add(serverAddress);
    
                // 三个参数分别为 用户名 数据库名称 密码
                MongoCredential credential = MongoCredential
                        .createScramSha1Credential("zyh", "admin",
                                "zyh".toCharArray());
                List<MongoCredential> credentials = new ArrayList<MongoCredential>();
                credentials.add(credential);
    
                // 通过连接认证获取MongoDB连接
                MongoClient mongoClient = new MongoClient(addrs, credentials);
    
                // 连接到数据库
                MongoDatabase mongoDatabase = mongoClient.getDatabase("zyhdb");
    
                // 新建集合,执行后会在数据库里新建一个空的集合
                // mongoDatabase.createCollection("student");
                // System.out.println("新建集合成功");
    
                // 获取集合,并往集合中插入数据
                MongoCollection<Document> mongoCollection = mongoDatabase
                        .getCollection("student");
    
                // 插入一条数据
                // Document document = new Document();
                // document.append("name", "zhangsan");
                // document.append("age", 28);
                // mongoCollection.insertOne(document);
                // System.out.println("插入一条数据成功");
    
                // 插入多条数据
                // List<Document> documentList = new ArrayList<Document>();
                // Document document1 = new Document();
                // document1.append("name", "lisi");
                // document1.append("age", 28);
                // document1.append("sex", "男");
                // Document document2 = new Document();
                // document2.append("name", "wangwu");
                // document2.append("age", 31);
                // document2.append("sex", "男");
                // documentList.add(document1);
                // documentList.add(document2);
                // mongoCollection.insertMany(documentList);
                // System.out.println("插入多条数据成功");
    
                // 查询数据
                // 查询集合中所有的数据
                // FindIterable<Document> findIterable = mongoCollection.find();
                // MongoCursor<Document> mongoCursor = findIterable.iterator();
                // while (mongoCursor.hasNext()) {
                // System.out.println(mongoCursor.next());
                // }
    
                // 根据条件查询
                // Document query = new Document();
                // query.put("age", new Document("$lt", 30));
                // query.put("sex", "男");
                // query.put("name", query);
    
                // 正则表达式查询
                // Pattern pattern = Pattern.compile("^zhang");
                // query.put("name", pattern);
    
                // 排序
                // Document sort = new Document();
                // sort.put("name", -1); // 1是正序,-1是倒序
    
                // FindIterable<Document> findIterable = mongoCollection.find(query)
                // .sort(sort);
                // MongoCursor<Document> mongoCursor = findIterable.iterator();
                // while (mongoCursor.hasNext()) {
                // Document doc = mongoCursor.next();
                // System.out.print("name:" + doc.get("name") + "...");
                // System.out.print("age:" + doc.get("age") + "...");
                // System.out.println("sex:" + doc.get("sex") + "...");
                // }
    
                // mongoCollection.findOneAndUpdate(查询条件, 修改内容); // 查询出第一条数据并修改
                // mongoCollection.findOneAndDelete(查询条件); // 查询出第一条数据并删除
                // mongoCollection.findOneAndReplace(查询条件, 替换内容); // 查询出第一条数据并替换
    
                // 修改数据
                // Document query = new Document();
                // query.put("age", 28);
                // Document update = new Document();
                // Document d = new Document();
                // d.put("birthday", new Date());
                // d.put("name", "zhangsan");
                // update.put("$set", d);
                // mongoCollection.updateOne(query, update); // 修改查询到的第一条数据
                // mongoCollection.updateMany(查询条件, 修改内容);// 修改查询到的所有数据
    
                // 删除数据
                // Document query = new Document();
                // query.put("age", 28);
                // mongoCollection.deleteOne(query); // 删除查询到的第一条数据
                // mongoCollection.deleteMany(查询条件); // 删除查询到的所有数据
    
                // mongoCollection.drop(); // 删除集合
    
            } catch (Exception e) {
                e.printStackTrace();
            }
    
        }
    }
  • 相关阅读:
    高斯消元学习
    HDU 4596 Yet another end of the world(解一阶不定方程)
    Codeforces Round #318 div2
    HDU 4463 Outlets(一条边固定的最小生成树)
    HDU 4458 Shoot the Airplane(计算几何 判断点是否在n边形内)
    HDU 4112 Break the Chocolate(简单的数学推导)
    HDU 4111 Alice and Bob (博弈)
    POJ 2481 Cows(线段树单点更新)
    HDU 4288 Coder(STL水过)
    zoj 2563 Long Dominoes
  • 原文地址:https://www.cnblogs.com/zhangyanhu/p/5554392.html
Copyright © 2011-2022 走看看