MongoDB入门(四)–mongodb与java

首先要下载java驱动包,地址:https://github.com/mongodb/mongo-java-driver/downloads,并引入工程。

//引入相关jar包
import com.mongodb.Mongo;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import com.mongodb.DBCursor;

//建立连接
Mongo m = new Mongo( "localhost" , 27017 );
//获取所有数据库列表,貌似空数据库不显示
for (String s : m.getDatabaseNames()) {
     System.out.println(s);
}
//打开mydb库,如没有,则新建一个
DB db = m.getDB( "mydb" );
//获取mydb库所有集合
Set<String> colls = db.getCollectionNames();

//显示所有集合
for (String s : colls) {
    System.out.println(s);
}
//获取一个集合
DBCollection coll = db.getCollection("testCollection")
//内部文档组装数据
BasicDBObject doc = new BasicDBObject();
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);
//用集合的insert方式插入
coll.insert(doc);

//查找集合的第一个文档,即第一条记录
DBObject myDoc = coll.findOne();
System.out.println(myDoc);
//查询a:1的记录,相当于字段--值的关系
DBObject dbObject = new BasicDBObject();
dbObject.put("a", "1");
//使用游标来获取记录
DBCursor curs = coll.find(dbObject);
while (curs.hasNext()) {
    System.out.println("query result-------" + curs.next().get("_id").toString());
}

好了,简单先介绍到这儿,相信通过上面几行代码,你已经初步知道JAVA怎么操纵MongoDB了,进阶用法请查看官方手册:

http://www.mongodb.org/display/DOCS/Java+Tutorial

MongoDB入门(三)–命令入门

打开C:/mongodb/bin/mongo.exe,mongodb的自带客户端,输入命令:

show   dbs       显示数据库列表
show  users    显示用户
use   <db name>  切换数据库
show collections   显示当前数据中的集合(相当于关系型数据库中的表)
db.help()        显示数据库操作命令
db.foo.help()          显示操作集合的命令
db.foo.save({a:1})  向当前数据中foo集合中插入一条记录,mongodb以BSON为存储形式,类似于JSON,key-value成对,key一般是String,value可以为任意结构
db.foo.find()           查询当前数据库中的foo集合
db.foo.find({a:1})  查询foo集合中属性是a值是1的记录,相当于select * from foo where a=1
db.foo.find().count()   查询foo集合中记录数,相当于select count(*) from foo

命令就不一一介绍了, 详细的查询语法官网有mongo与sql的对照表:

http://www.mongodb.org/display/DOCS/SQL+to+Mongo+Mapping+Chart

今天就简单介绍到这儿,下一讲说一下mongodb与java的结合,呵。

MongoDB入门(二)—安装

一、下载
官网下载地址:http://www.mongodb.org/downloads,现在最新版本是1.6.5。

二、安装
本文于windows版本为例,Windows下MongoDB无需安装,下载ZIP压缩包,解压到C盘下就OK了,并在建立C:/data/db目录,这是数据文件存放的默认位置,也可以启动mongodb时带参数建立。

三、启动
bin目录下是MongoDB 的一些主程序,服务启动程序是mongod.exe,在命令行下执行:mongod就启动了服务了,也可以mongod  –dbpath  c:/data/db 来启动服务并创建数据存放路径,默认端口是27017,如需指定,则执行mongod –port  1111。

四、安装为windows服务
创建c:/mongodb/logs目录,执行mongod –logpath c:\mongodb\logs\mongodb.log –logappend
–dbpath C:\data\db –directoryperdb –serviceName mongodb –install,这样启动Windows时就会自动启动服务了。

OK,这样就安装完成了。

MongoDB入门(一)—简介

MongoDB是一个基于分布式文件存储的数据库,由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简洁描述为:scalable, high-performance, open source, schema-free, document-oriented database。

跟mysqld一样,一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,这里的表名叫collection,每个collection可以存放多个文档(document),每个文档都以BSON(binary json)的形式存放于硬盘中。跟关系型数据库不一样的地方是,它是的以单文档为单位存储的,你可以任意给一个或一批文档新增或删除字段,而不会对其它文档造成影响,这就是所谓的schema-free,这也是文档型数据库最主要的优点。跟一般的key-value数据库不一样的是,它的value中存储了结构信息,所以你又可以像关系型数据库那样对某些域进行读写、统计等操作。可以说是兼备了key-value数据库的方便高效与关系型数据库的强大功能。

继续阅读