`

MongoDB入门

 
阅读更多

-、安装

Linux系统下

1、安装

命令:sudo apt-get install mongodb-server

2、测试安装是否成功

命令:mongo

结果:connecting to test则表示连接成功

 

 

Windows系统下

1、安装

从官网(www.mongodb.org/downloads)下载,将下载的文件解压放到任何目录,设置mongodb/bin到path

2、测试安装是否成功

命令:mongo

结果:connecting to test则表示连接成功

 

二、基本概念

1、文档(document)

        文档(document)由键/值对构成,像{a:1};{s:"abc"}等,它是MongoDB核心单元.MongoDB的文档(document),相当于关系数据库中的一行记录。

 

2、集合(collection)

        集合(collection)由多个文档组成,相当于关系数据库的表。

 

3、数据库(database)

  多个集合(collection),逻辑上组织在一起,就是数据库(database)。

 

三、常用命令

show dbs//查看所有数据库
use databaseName//切换到指定数据库
show tables//查看所有表
show collections//同上,查看所有表
db.tableName.save(valueKey);//添加一条数据,其中valueKey为Json数据格式,eg:{name:"John",age:23}
db.tableName.find();//查找表中所有数据
db.tableName.find(valueKey)://按条件查找数据
db.tableName.remove();//删除表中所有数据
db.dropDatabase();//删除数据库
db.tableName.drop();//删除表
db.addUser("userName","password");//添加用户
db.removeUser("userName");//删除指定用户
db.system.users.find();//查看所有用户


四、与Java结合使用

 

import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;

public class MongoDB {

    public static void main(String[] args) {

        long start = System.nanoTime();
        DB mongoDB = getMongoDB();
        DBCollection dbcollection = getDBconnection(mongoDB, "mydb");
        insertDocument(dbcollection);
        long end = System.nanoTime();
        double time = (end - start) / Math.pow(10, 9);
        System.out.println(time);

        DBCursor cursor = findData(dbcollection);
        List<DBObject> result = getDBObjectsFromDBCursor(cursor);
        for (DBObject obj : result) {
            System.out.println(obj);
        }
    }

    public static DBCursor findData(DBCollection collection) {

        BasicDBObject query = new BasicDBObject();
        query.put("name", new BasicDBObject("$gt", 20).append("$lte", 100));
        return collection.find(query);
    }

    public static List<DBObject> getDBObjectsFromDBCursor(DBCursor cursor) {

        List<DBObject> dbObjectList = new ArrayList<DBObject>();
        while (cursor.hasNext()) {
            dbObjectList.add(cursor.next());
        }
        return dbObjectList;
    }

    // 获得指定库的所有集合名
    public static Set<String> getAllCollectionName(DB db) {

        return db.getCollectionNames();
    }

    // 获取指定集合
    public static DBCollection getDBconnection(DB db, String collectionName) {

        return db.getCollection(collectionName);
    }

    // 插入文档
    public static void insertDocument(DBCollection collection) {

        for (int i = 0; i < 100; i++) {
            BasicDBObject doc = new BasicDBObject();
            doc.put("name", i);
            doc.put("age", i);
            collection.insert(doc); // 保存
        }

        // doc.put("name", "MongoDB");
        // doc.put("type", "database");
        // doc.put("count", 1);
        //
        // BasicDBObject info = new BasicDBObject();
        // info.put("x", 203);
        // info.put("y", 102);
        //
        // doc.put("info", info);
    }

    // 连接MongoDB
    public static DB getMongoDB() {

        try {
            // Mongo m = new Mongo();//连接本地
            // Mongo m = new Mongo("localhost");//默认端口27017
            Mongo m = new Mongo("127.0.0.1", 27017);// 指定主机与端口
            DB db = m.getDB("mydb");// 取得指定库
            return db;
        } catch (UnknownHostException e) {
            e.printStackTrace();
            return null;
        }
    }
}

 

 

 用户认证

    boolean auth = db.authenticate(myUserName, myPassword);  
 

 

分享到:
评论

相关推荐

    MongoDB入门指南.pdf

    MongoDB入门指南 MongoDB是一种开源的文档类型数据库,它具有高性能、可扩展、高可用、自动收缩等特性。MongoDB能够避免传统的ORM映射,从而有助于开发。MongoDB中的每一行记录就是一个文档,它是一个由键值对构成...

    MongoDB入门教程 + 架构简析 + java使用MongoDB的简单程序

    首先,我们从"MongoDB入门教程"开始。MongoDB采用的是键值对存储方式,数据以JSON格式(BSON)存储,这使得数据的读写更加自然和高效。MongoDB支持丰富的查询语法,包括字段选择、条件操作、排序和分组,为开发者...

    MongoDB入门.pdf

    ### MongoDB入门知识点详解 #### 一、NoSQL简介与MongoDB概述 - **NoSQL**:NoSQL(Not Only SQL)是一种非关系型数据库管理系统的总称,它突破了传统关系型数据库在处理大规模数据时的限制,尤其适用于大数据及高...

    MongoDB 入门

    在这个“MongoDB入门”主题中,我们将深入探讨MongoDB的基础知识、安装与配置、数据模型、查询操作以及高级特性。 首先,让我们了解MongoDB的基本概念。MongoDB以其“集合”(Collections)和“文档”(Documents)...

    mongoDB入门到精通.txt

    ### MongoDB入门到精通知识点概述 #### 一、MongoDB简介 MongoDB是一种开源的文档数据库,采用JSON格式存储数据,并提供了高性能、高可用性和自动扩展的能力。它属于NoSQL数据库的一种,非常适合处理大规模数据和...

    MongoDB入门到精通 中文资料

    Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前IT从业人员的青睐。Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB中 每一条记录都是一个Document对象。...

    MongoDB入门学习

    ### MongoDB入门学习知识点详解 #### 一、MongoDB简介与特点 MongoDB是一种非常流行的开源文档型NoSQL数据库系统,以其高性能、高可用性及易扩展性而著称。相较于传统的关系型数据库如MySQL、Oracle等,MongoDB...

    mongodb入门

    本书《mongodb入门》是一本旨在帮助初学者快速学习MongoDB基本用法的入门小书。它适合那些希望在短时间内掌握MongoDB核心概念和操作的读者。作者Karl Seguin是一位拥有丰富技术背景的开发者,其经历跨越多个领域和...

    mongodb入门到精通

    根据提供的文件内容,我们将详细探讨MongoDB相关的知识点,并围绕NoSQL数据库的特点和优势,以及分布式系统理论中的CAP定理和ACID与BASE模型。 首先,MongoDB是一种流行的NoSQL数据库,它以文档的形式存储数据,与...

    MongoDB入门到精通

    ### MongoDB入门到精通 #### 一、MongoDB简介 **MongoDB** 是一款采用 C++ 编写的开源、可扩展且高性能的文档型数据库。它以其面向文档的特性、易于扩展性和高性能而著称,成为了现代应用开发中非常受欢迎的选择之...

    MongoDB入门指南

    《MongoDB入门指南》是一个快速入门MongoDB的教程,它以MongoDB的3.0版本进行说明。本教程安装的是MongoDB Windows 64位版本,目的只是为了让读者快速的入门MongoDB,快速理解和操作MongoDB。在开发或生产中强烈要求...

    MongoDB 入门教程 chm手册

    MongoDB 的入门教程旨在帮助初学者快速掌握这个数据库系统的基本概念和操作。 《MongoDB 入门教程》CHM 手册可能涵盖以下关键知识点: 1. **数据模型**:MongoDB 使用类似 JSON 的文档结构(BSON)来存储数据,...

    MongoDB入门教程及用例

    1.mongodb-win32-i386-2.4.8.zip 由于大小限制,请到官网下载...2.MongoDB开发使用手册.docx 3.MongoDB快速入门教程.docx 4.MongoDB入门经典.doc 5.MougoTest.rar(MongoDB入门经典.doc用例)

    Mongodb入门教程、示例+Spring Boot完整示例+聚合.docx

    "Mongodb入门教程、示例+Spring Boot完整示例+聚合" 本节课将完整地介绍 MongoDB 的入门教程、示例、Spring Boot 完整示例和聚合。 简介 NoSQL(Not Only SQL)是一种非关系型的数据库, MongoDB 是基于分布式...

    MongoDB 入门教程笔记

    MongoDB 入门教程笔记

    MongoDB入门指南 by it-ebooks.epub

    MongoDB入门指南

    MongoDB入门篇1

    MongoDB入门篇1主要介绍了数据的基本概念,数据库管理系统(DBMS)的定义,常见的数据库管理系统,以及NoSQL数据库的相关知识。 1. 数据:数据是未经处理的原始记录,描述事物存在的符号,通常需要通过组织和分类...

    mongoDB入门实战手册(中文版)

    ### MongoDB入门实战手册知识点概述 #### 一、MongoDB简介 MongoDB是一种开源的文档型数据库,属于NoSQL数据库的一种。它使用JSON格式的文档来存储数据,具有高性能、高可用性和易扩展性等特点,非常适合处理半结构...

    MongoDB入门与开发范例

    ### MongoDB入门与开发范例 #### 一、MongoDB与NoSQL运动 MongoDB作为NoSQL运动中的一个重要成员,它的出现和发展标志着数据库技术领域的新篇章。NoSQL(Not Only SQL)运动强调使用非关系型数据存储,以解决传统...

    《mongodb入门》读书笔记

    ### MongoDB入门知识点详解 #### MongoDB概述 MongoDB是一款开源、高性能、无模式的文档型数据库系统,被广泛应用于Web应用及大数据处理等场景。它采用了BSON(Binary JSON)格式来存储数据,使得数据存储更加灵活...

Global site tag (gtag.js) - Google Analytics