zoukankan      html  css  js  c++  java
  • Mongo数据库实验

    MongoDB数据库操作

    Student文档如下:

    {

    “name”: “zhangsan”,

    “score”: {

    “English”: 69,

    “Math”: 86,

    “Computer”: 77

    }

    }

    {

    “name”: “lisi”,

    “score”: {

    “English”: 55,

    “Math”: 100,

    “Computer”: 88

    }

    }

    1.根据上面给出的文档,完成如下操作:

    (1)用MongoDB Shell设计出student集合;

    use test01

    db.createCollection("Student")

    db.Student.insert({name:'zhangsan',score:{English:69,Math:86,Computer:77}})

    db.Student.insert({name:'lisi',score:{English:55,Math:100,Computer:88}})

     

    (2)用find()方法输出两个学生的信息;

    db.Student.find()

     

    (3)用find()方法查询zhangsan的所有成绩(只显示score列);

    db.Student.find({name:'zhangsan'},{'score':1})

     

    (4)修改lisi的Math成绩,改为95。

    db.Student.update({name:'lisi'},{$set:{'score.Math':95}})

    db.Student.find({name:'lisi'})

         

     

    2.根据上面已经设计出的Student集合,用MongoDB的Java客户端编程,实现如下操作:

    (1)添加数据:English:45       Math:89 Computer:100

          与上述数据对应的文档形式如下:

    {

    “name”: “scofield”,

    “score”: {

    “English”  : 45,

    “Math”: 89,

    “Computer”: 100

    }

    }

      

    (2)获取scofield的所有成绩成绩信息(只显示score列)

     

     

     

     

     

    import java.util.ArrayList;
    import java.util.List;
     
    import org.bson.Document;
    import com.mongodb.MongoClient;
    import com.mongodb.client.MongoCollection;
    import com.mongodb.client.MongoCursor;
    import com.mongodb.client.MongoDatabase;
    
    public class TestMongoDB {
    
        public static void main(String[] args) {
            MongoCollection<Document> collection = getCollection("test01","Student");
            insert(collection);
            find(collection);
        }
        
        public static MongoCollection<Document> getCollection(String dbname,String collectionname){
            MongoClient  mongoClient=new MongoClient("localhost",27017);
            MongoDatabase mongoDatabase = mongoClient.getDatabase(dbname);
            MongoCollection<Document> collection = mongoDatabase.getCollection(collectionname);
            System.out.println("连接成功");
            return collection;
        }
        public static void insert(MongoCollection<Document> collection){
            Document document=new Document("name","scofield").append("score", new Document("English",45).append("Math", 89).append("Computer",100));
            List<Document> documents=new ArrayList<Document>();
            documents.add(document);
            collection.insertMany(documents);
            System.out.println("插入成功!");
        }
        public static void find(MongoCollection<Document> collection){
            try{
                MongoCursor<Document>  cursor= collection.find(new Document("name","scofield")).projection(new Document("score",1)).iterator();
                while(cursor.hasNext()){
                    System.out.println(cursor.next().toJson());
                }
            }catch(Exception e){
                System.out.println("查找失败");
                System.err.println( e.getClass().getName() + ": " + e.getMessage() );
            }
        }
    }

     

  • 相关阅读:
    day3 集合
    进度条
    day3 文件操作 seek tell 修改
    day3 函数
    同学满分代码,购物车。
    day2杂---三元运算 is
    模块sys os
    day2--列表/元组/字符串/字典
    一、Git配置
    四、TestNG 批量执行脚本Runner.xml
  • 原文地址:https://www.cnblogs.com/a8047/p/15652599.html
Copyright © 2011-2022 走看看