zoukankan      html  css  js  c++  java
  • NoSql实验(四)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集合;

     

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

     

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

     

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

     

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

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

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

    {

    “name”: “scofield”,

    “score”: {

    “English”: 45,

    “Math”: 89,

    “Computer”: 100

    }

    }

      

    MongoClient mongoClient = new MongoClient("127.0.0.1", 27017);
    DB db = mongoClient.getDB("test");
    DBCollection collection = db.getCollection("student");
    DBObject doc = new BasicDBObject();
    doc.put("name", "scofield");
    Map<String,String> map=new HashMap<String, String>();
    map.put("english","45");
    map.put("math","89");
    map.put("computer","100");
    doc.put("score",map);
    db.getCollection("student").insert(doc);

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

     

    MongoClient mongoClient = new MongoClient("127.0.0.1", 27017);
    DB db = mongoClient.getDB("test");
    DBCollection collection = db.getCollection("student");
    DBObject doc = new BasicDBObject();
    doc.put("name","scofield");
    DBCursor cursor = collection.find(doc);
    try{
         while(cursor.hasNext()){
             System.out.println("student集合所拥有的name--[" + cursor.next().get("name") + "]");
         }
     }finally{
         cursor.close();
     }
     System.out.println("student集合中的记录数为----------->" + cursor.count());
     System.out.println("student集合数据格式化后的JSON串为-->" + JSON.serialize(cursor));
  • 相关阅读:
    Java内存模型原理,你真的理解吗?
    CentOS 7.4 下搭建 Elasticsearch 6.3 搜索群集
    CentOS 7下ElasticSearch集群搭建案例
    分布式系统理论基础
    分布式系统理论进阶
    Paxos,Raft,Zab一致性协议-Raft篇
    P2P 网络核心技术:Gossip 协议
    分布式系统Paxos算法
    Hacker News的热门排名算法(转)
    Elasticsearch分布式机制和document分析
  • 原文地址:https://www.cnblogs.com/fengchuiguobanxia/p/15511520.html
Copyright © 2011-2022 走看看