`

mongoDB入门列子及原理介绍

阅读更多

本文着重介绍mongonDB的原理及安装,最后送大家一个简单的列子,有可以运行的列子和原理,相信大家很容易学会mongonDB ^_^

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。意在为WEB应用提供可扩展的高性能数据存储解决方案。

它有一下几个特点:

  1.模式自由。 ( 像json数据一样可以自由的宽展) 

  2.支持动态查询。

  3.支持完全索引,包含内部对象。

  4.支持查询。

  5.支持复制和故障恢复。

  6.使用高效的二进制数据存储,包括大型对象(如视频等)。

  7.自动处理碎片,以支持云计算层次的扩展性。

  8.支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。

  9.文件存储格式为BSON(一种JSON的扩展)。

  10.可通过网络访问。(和大多数据数据库一样)

下面是个简单的增加和查找的列子,还是那句话不为别的只为读者一最快的速度了解mongonDB

package com;

import java.net.UnknownHostException;

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

/** * @className:MogonDBDemo.java 
 * @classDescription: 
 * @author:jiangmianyue
 * @createTime:2011-12-3
 */
public class MogonDBDemo {

	/**  
	 * @MethodDescription: one simple example for mogondb
	 * @author:jiangmianyue
	 * @createTime:2011-12-3
	 */
	 public static Mongo mongo=null;    // Mongo对象
	 public static DB database=null;      // MongonDB的数据库对象
	 public static DBCollection  collection = null;    // 类似于关系数据库的表
	// 静态语句块,当与类同事加载,可以一个防止频繁初始化
    static{
    	try {
	    /**
	     *  初始化mogondb对象如果是本机Mongo()是个无参数的构造函数,如果是其他网络上的Mongo写成
	     *  Mongo("http://233.23.11.8:端口号/数据库")的形式
	    */
			mongo = new Mongo();
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (MongoException e) {
			e.printStackTrace();
		}
		// 获取一个叫xuehanDB的数据库,若没有此数据库就会新建一个
		database = mongo.getDB("xuehanDB");
		// 获取一个teacher集合没有新建一个
		collection = database.getCollection("people");
    }
	public static void main(String[] args) {
		Teacher t1 = new Teacher();
		t1.setId(1);
		t1.setName("teacher1");
		insertOne(t1);
		query();
	}
	// 增加一个对象
	public static void insertOne(Teacher teacher){
		BasicDBObject baseObject = new BasicDBObject();
		baseObject.put("id", teacher.getId());
		baseObject.put("name", teacher.getName());
		collection.insert(baseObject);
	}
	// 为对应Id的老师增加学生,例如给Id为1的老师增加学生
	// 查询出所有的teacher并打印出来
	public static void query(){
		DBCursor cur = collection.find();
		while (cur.hasNext()) {
			System.out.println(cur.next());
		}
	}

}
    // 新建一个teacher对象
    class Teacher{
    	private int id;
    	private String name;
		public int getId() {
			return id;
		}
		public void setId(int id) {
			this.id = id;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
    	
    }
 

 下载官方的mongonDB数据库解压到F:\job\db "cmd"进入dos界面,进入到mongonDB的bin目F:\job\db\mongodb-win32-i386-2.0.2-rc1\bin>敲入命令mongod.exe --dbpath F:\job\db\data(必须建立F:\job\db\data文件夹,文件夹名字可以随意不过路径不能有中文)敲回车mongod启动成功

运行java文件可以看到一下结果:

{ "_id" : { "$oid" : "4ed9cc01ffbf19d82ed3102b"} , "id" : 1 , "name" : "student1"}
{ "_id" : { "$oid" : "4ed9cc01ffbf19d82ed3102c"} , "id" : 1 , "name" : "student1"}
{ "_id" : { "$oid" : "4ed9cc19ffbf45716606bfb8"} , "id" : 1 , "name" : "teacher1"}
{ "_id" : { "$oid" : "4ed9cc92ffbf98ec2a4b8e36"} , "id" : 1 , "name" : "teacher1"}

每运行一次记录增加一条,呵呵,恭喜你你的mongodb第一个小程序运行成功

 

0
0
分享到:
评论
1 楼 woshiainide 2012-01-18  
楼主居然有脸说原理两个字 ,别乱加标题

相关推荐

    mongoDB入门列子及原理介绍.docx

    MongoDB 入门指南 MongoDB 是一种基于分布式文件存储的 NoSQL 非关系数据库,旨在为 Web 应用提供可扩展的高性能数据存储解决方案。它具有以下几个特点: 1. 模式自由:MongoDB 的数据存储格式为 BSON(一种 JSON ...

    MongoDB入门指南.pdf

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

    MongoDB入门教程及用例

    1.mongodb-win32-i386-2.4.8.zip 由于大小限制,请到官网下载http://www.mongodb.org/downloads ...3.MongoDB快速入门教程.docx 4.MongoDB入门经典.doc 5.MougoTest.rar(MongoDB入门经典.doc用例)

    MongoDB入门到精通 中文资料

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

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

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

    MongoDB入门.pdf

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

    mongodb入门到精通

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

    mongoDB入门到精通.txt

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

    MongoDB 入门

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

    MongoDB入门到云上开发视频.zip

    网盘文件永久链接 目录 课时1:MongoDB数据库入门.mp4 课时2:MongoDB数据数据查询与分析.mp4 课时3:MongoDB数据库核心知识.mp4 ...课时11:MongoDB索引原理及使用.mp4 课时12:MongoDB Sharding原理与使用.mp4

    MongoDB 入门教程笔记

    MongoDB 入门教程笔记

    MongoDB入门到精通

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

    MongoDB入门指南

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

    MongoDB入门学习

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

    MongoDB入门指南 by it-ebooks.epub

    MongoDB入门指南

    MongoDB教程基础入门

    教程名称:MongoDB教程基础入门 课程目录:【】MongoDB教程基础入门-代码【】MongoDB教程基础入门01第一讲上【】MongoDB教程基础入门02第一讲下【】MongoDB教程基础入门03第二讲上【】MongoDB教程基础入门04第二讲...

    mongodb入门篇

    本篇文章将深入介绍MongoDB的基础知识,包括它的应用背景、主要特性、数据库概念、安装部署以及基本操作。 在国内,MongoDB被广泛应用于互联网公司,如电商平台、社交网络和大数据分析等场景。在国外,其应用更为...

    mongodb入门

    本书将会以简单、快速、高效的方式,介绍MongoDB的基础知识和基本操作,帮助读者快速入门。通过阅读这本书,即使你是数据库领域的初学者,也能快速掌握MongoDB的核心概念,并学会在实际项目中应用它。 对于希望深入...

    10、MongoDB快速入门实战-ev.rar

    10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门实战_ev.rar10、MongoDB快速入门...

    MongoDB 入门教程 chm手册

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

Global site tag (gtag.js) - Google Analytics