mongodb数据库操作
‘壹’ mongodb怎么将知网数据库导入
mongodb将知网数据库导入的操作如下:
把大量数据导入数据库中:
mongoimport -d 数据库名称 -c 集合名称 -file 要导入的知网数据文件。
找到mongodb数据库的安装目录,将安装目录下的bin目录放置在环境变量中。
如果bin目录里面少.exe文件,下面的链接里有bin目录下的所有.exe文件,下载然后复制到bin目录下就可以了。
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库(nosql)之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。首先在你的服务器上安装好MongoDB,window平台安装 MongoDB,linux平台安装MongoDB,之后连接MongoDB,创建数据库,删除数据库。
‘贰’ 如何在window下使用mongodb
1、下载MongoDB数据库;
2、将安装文件解压到C盘(注意:安装路径中不能出现空格),配置“环境变量”,将 %MONGODB_HOME%in 添加到“Path”中;
3、进入DOS窗口,设置数据保存目录(与端口)和日志输出目录。
DOS命令:
mongod --port --dbpath --logpath --logappend --directoryperdb
参数说明:
--port 表示数据库端口,默认27017;
--dbpath 表示数据文件存储路径,一般设置为%MONGODB_HOME%data;
--logpath 表示日志文件存储路径,一般设置为%MONGODB_HOME%logsmongodb.log;
--logappend 表示日志追加,默认是覆盖;
--directoryperdb 表示每个db一个目录;
4、完成以上设置,MongoDB已经启动,新开启DOS窗口,执行“mongo.exe”,出现“MongoDB shell version: 1.8.1”表示安装成功了。
5、目前是以无权限限制的方式启动的,你可以做任何操作。那么我们先切换到admin下,创建一个root用户吧。执行命令:
"use admin" -> "db.addUser("root","root")" -> "db.auth("root","root")",如下图所示:
6、把MongoDB注册为Windows Service,让它开机自动启动;执行命令:
mongod --bind_ip 127.0.0.1 --logpath %MONGODB_HOME%logsmongodb.log --logappend --dbpath %MONGODB_HOME%data --directoryperdb --auth --install
注意:
a.必须切换到bin目录下执行该条指令。
b.必须添加--auth用户权限才会生效。
c.除了“--auth”和“--install”两个参数,别的参数要跟你设置用户时启动服务的参数一致,尤其是“--directoryperdb”。
第一次配置完成后,一定要重启才会有效果 重启mongo客户端,不输入-u-p可以直接进入,但是不具有任何权限。正确的访问方式为:mongo 数据库名 -u 用户名 -p。另外设置用户
7、服务安装成功后的界面:
8、如果安装失败:
删除MongoDB服务,执行命令:
sc delete MongoDB
启动MongoDB服务,执行命令:
net start "MongoDB"
9、在cmd下可有两种方法打开,net和sc,net用于打开没有被禁用的服务,语法是:
启动:net/sc start 服务名
停止:net/sc stop 服务名
10、另外,sc可用于打开被禁用的服务,语法是:
sc config 服务名 start= demand //手动
sc condig 服务名 start= auto //自动
sc config 服务名 start= disabled //禁用
注意:以上三个命令“=”号后面必须有一个空格
Mongo(也译芒果)名字来自humongous,意思是巨大无比的,极大的。它是一个高性能,开源,无模式的文档型NOSQL数据库。Mongo使用C++开发,提供了以下功能:
面向集合的存储:适合存储对象及JSON形式的数据。
动态查询:Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化器会分析查询表达式,并生成一个高效的查询计划。
查询监视:Mongo包含一个监视工具用于分析数据库操作的性能。
复制及自动故障转移:Mongo数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目标是提供冗余及自动故障转移。
高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)。
自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。
MongoDB服务端可运行在Linux、Windows或OS X平台,支持32位和64位应用,在32位模式运行时支持的最大文件尺寸为2GB。
常用启动参数:
–dbpath 指定特定存储目录启动,若目录不存在则创建。默认目录为/data/db。例:./mongod –dbpath /var/data/mongo
–port 指定端口启动。默认端口为27017。例:./mongod –port 12345
windows 下使用方法
直接启动:
$ bin/mongod.exe #启动服务器
$ bin/mongo.exe #启动客户端连接
注册为服务,这样以后开机就可以自动启动
$ bin/mongod.exe --logpath c:\data\log.log --logappend --dbpath "c:\data\db" --install #主要是install 参数,要新建c:\data\log.log文件和c:\data\db目录
删除服务
$ bin/mongod.exe --remove
当注册为服务时可以Win+R打开运行,输入services.msc来查看服务状态
常见错误
1、monge.exe客户端连接时报错:couldn’t connect to server 127.0.0.1 shell/mongo.js:79
这是因为monged.exe启动失败
2、多次尝试后monged.exe启动失败,始终没找到原因
这个错误困扰了我一段时间,后来发现c:\data\db下有个mongod.lock锁文件,把这个文件删除后,重新启动服务器就可以了。
服务启动报错: error2: system can not find the file specified.
solution:
安装服务的时候, 你需要用 mongod.exe的 full path
C:\mongodb-win32-i386-1.8.2\bin\mongod.exe --logpath c:\mongo
db\logs\mongo.log --dbpath c:\mongodb\data\db --directoryperdb --install
to remove service
C:\mongodb-win32-i386-1.8.2\bin\mongod.exe --logpath c:\mongo
db\logs\mongo.log --dbpath c:\mongodb\data\db --directoryperdb --remove
and re open windows service windows, the original service will gone.
‘叁’ 如何在linux操作mongodb
首先到下面的工具原料中的mongodb的官...
1
解压对应的安装包 命令如下: ...
2
因为mongodb不需要像别的数据库那样繁...
3
然后为mongodb创建数据库存放的位置和...
4
进到mongodb下面的bin目录下查看mongod...
5
启动mongodb数据库,对应的参数说明用绿...
6
为了安全期间建议关闭28017端口防止信...
7
做好上面的操作就可以进入mongodb的客..
‘肆’ MongoDB在ThinkPHP里面怎么进行数据库操作
连接数据库
$conn=new Mongo(“mongodb://sa:123@localhost”); #带用户名密码
选择数据库和集合
$db=$conn->selectDB(“mydb”);
$collection = $db->selectCollection(‘column’);
增删改查
1.插入
$array=array(‘column_name’=>’col’.rand(100,999),’column_exp’=>’xiaocai’);
$result=$collection->insert($array); #简单插入
2. 修改更新
$where=array(‘column_name’=>’col123′);
$newdata=array(‘column_exp’=>’GGGGGGG’,'column_fid’=>444);
$result=$collection->update($where,array(‘$set’=>$newdata));
3.删除
$where=array(‘column_name’=>’col685′);
$result=$collection->update($where,array(‘$unset’=>’column_exp’));
4.查询
$result = $collection->find();
‘伍’ windows下安装好mongodb后怎么创建数据库
一、安装mongoDB
1、解压mongodb-win32-i386-1.8.2至E:\MyProgram\mongodb-win32-i386-1.8.2(你可以按照自己的路径来,路径中最好不要有空格,要不然麻烦)
2、新建文件夹C:\DATA\DB,这是mongoDB的默认数据文件夹,你也可以在文件夹E:\MyProgram\mongodb-win32-i386-1.8.2新建一个文件夹data作为mongoDB的数据库文件存储目录
3、进入CMD,运行命令E:\MyProgram\mongodb-win32-i386-1.8.2\bin\mongod.exe -dbpath E:\MyProgram\mongodb-win32-i386-1.8.2\data,OK,mongoDB已经安装成功并已经在运行中了,你将会看到如下:
此时是mongoDB的运行状态,你可以按Ctrl+C结束运行状态或者直接关掉CMD结束运行。
二、运行mongoDB时的错误与处理
完成安装后,结束掉所有CMD窗口,然后进行如下操作:
1、运行E:\MyProgram\mongodb-win32-i386-1.8.2\bin\mongo,可能会报错误:couldn't connect to server 127.0.0.1 shell/mongo.js,原因是mongod.exe没有启动,
2、既然没启动,那咱就启动呗,运行E:\MyProgram\mongodb-win32-i386-1.8.2\bin\mongod,可能会报错误:dbpath (/data/db/) does not exist, terminating,看这样子,本人觉得还得在data文件夹下再建一个db文件夹啊,如此即新建一db文件夹,再运行mongod命令,结果提示一样,不知道怎么搞啦,咱google吧
找到文章http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo
说“To start Mongo in default mode, where data will be stored in the /data/db directory (or c:\data\db on Windows), and listening on port 27017”,哦,原来默认的文档路径在c:\data\db,啥也不说,直接按这个建文件夹,再次运行命令mongod,OK了,启动成功,这个命令窗口不能关闭,否则mongoDB就退出了
三,使用mongo命令
保持mongod命令窗口的运行状态,再新开一命令窗口
输入E:\MyProgram\mongodb-win32-i386-1.8.2\bin\mongo,出现
MongoDB shell version:1.8.2
connecting to:test
>
OK,连接成功。
1,show dbs 显示数据库列表
2,use Northwind 进入Northwind数据库,大小写敏感
3,show collections 显示数据库中的集合
4,db 用于查看当前所在的数据库
5,db.Customer.count() 查看集合Customer的记录总数
6,db.Customer.findOne({"_id":"1"}) 查看CustomerId=1的记录
新增数据
1,use MyTest,这个数据库不存在,无所谓,mongo会创建,
MongoDB在使用前,并不要求您事先创建好相应的数据库,设计数据表结构!
在MongoDB中,没有【表】的概念,取而代之的是【集合】,也没有【数据记录】的概念,取而代之的是【文档】,我们可以把【文档】理解成一个【对象】,任意的对象,甚至可以有复杂的嵌套层次。
因此,我们不用再写代码从【数据表字段】到C#类的【属性,字段】的转换了,现在直接就可以读写整个对象了。
而且MongoDB不支持Join操作,所以,如果有【关联】操作,就需要你自己来处理
2,item={"Key":"1","text":"wokao","number":3}
3,db.table1.insert(item),mongo将建立集合table1,并将item插入,完成了新增加数据库的工作
4,db.table1.find()显示table1中的数据,MongoDB的文档使用的是一种称为BSON格式的对象,与javascript中的JSON类似
5,额外的,输入item1={"Id":5,"str":"asdfasdf"},再插入db.table1.insert(item1),再用find()命令看,也插入成功了~,注意到结构和item不一样!但不建议这样做。
注意到:【每个文档有一个名为 "_id" 的成员】,我可没有定义啊。
其实,MongoDB会为每个文档都创建这样一个文档成员,我们指定的 "key", "id" 对于MongoDB来说:它们并不是【文档的主键】,MongoDB只认 "_id",你可以指定,但如果不指定,MongoDB就自动添加。
修改数据
1,var t=db.table1.findOne({"Id":5}),获取一条记录
2,t.str="wokao"
3,db.table1.update({"Id":5},t)
删除数据
db.table1.remove({"Id":5})
查找数据
上面已经有find和findOne命令,即用于查询
db.table1.find()
MongoDB的查询条件中,并没有 >, <, >= , <= 这些运算符,而是使用 "$lt", "$lte", "$gt", "$gte"
新建表
db.MyTest.table2.save({})
删除表
db.table1.drop()或db.runCommand({"drop","table1"})
删除数据库
db.runCommand({"dropDatabase": 1}),此命令只能删除当前数据库
获取服务端状态信息
db.runCommand({"serverStatus" : 1})
‘陆’ mongodb在java中怎么做修改操作
java 操作mongodb插入、读取、修改以及删除基础
本文主要讲述如何使用Java操作MongoDB以及了解MongoDB如何进行日常的数据库操作。文章内容如下:第一步:安装MongoDB无需太多的繁杂步骤,你只要在MongoDB官方网站查看安装说明,根据自己的操作系统进行选择适应的版本即可。第二步:启动MongoDB服务器这一步也很简单。运行mongod.exe文件里的bin文件夹(我使用的是Windows OS系统),并启动MongoDB服务器。在默认的情况下服务器将启动端口27017,你需要在安装过程中创建将数据存储在/data/db目录里。第三步:启动MongoDB shell指令你可以通过运行mongo.exe文件来启动MongoBD shell。第四步:利用MongoDB创建数据库利用MongoDB在MongoDB shell中输入以下内容建立一个名为“company”的数据库。use company 记住,除非你在MangoDB里保存了一些东西,否则它不会自动为你保存。使用下面的命令帮你查看可用的数据库,它会显示“company”尚未被创建。show dbs; 第五步:在MongoDB中保存数据使用下面的命令来保存employee 数据代表一个collection,将其命名为employees。employee = {name : "A", no : 1} db.employees.save(employee) 通过使用下面的命令来查看collection里的数据。db.users.find(); 如何使用Java操作MongoDB?下面是是一段简单的Java代码,你可以在这里获得mongo-java驱动。很简单,只需要使用下面的代码,重复上面的操作即可。package com.eviac.blog.mongo; import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.Mongo; import com.mongodb.MongoException; public class MongoDBClient { public static void main(String[] args) { try { Mongo mongo = new Mongo("localhost", 27017); DB db = mongo.getDB("company"); DBCollection collection = db.getCollection("employees"); BasicDBObject employee = new BasicDBObject(); employee.put("name", "Hannah"); employee.put("no", 2); collection.insert(employee); BasicDBObject searchEmployee = new BasicDBObject(); searchEmployee.put("no", 2); DBCursor cursor = collection.find(searchEmployee); while (cursor.hasNext()) { System.out.println(cursor.next()); } System.out.println("The Search Query has Executed!"); } catch (UnknownHostException e) { e.printStackTrace(); } catch (MongoException e) { e.printStackTrace(); } } } 结果如下:{ "_id" : { "$oid" : "4fec74dc907cbe9445fd2d70"} , "name" : "Hannah" , "no" : 2} The Search Query has Executed! 小结:随着互联网Web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展也非常迅速。本文浅显的谈及了如何使用Java操作MongoDB以及了解MongoDB如何进行日常的数据库操作的问题。如果您是这方面的专家不妨与我们分享下。本文为CSDN编译整理,未经允许不得转载。
‘柒’ mongodb数据库如何建表
MongoDB创建表步骤,Mongo常用的数据库操作命令,查询,添加,更新,删除_MongoDB 性能监测。
use Admin (切换到创建用户)
db.TestDb (创建数据库)
db.addUser(“userName”,”Pwd”) 创建用户
db.auth(“userName”,”Pwd”) 设置用户为允许连接的用户
db.createCollection(“TableName”) 创建表
showcollections 查看表是否创建成功
db.TableName.Save({age:1}) 添加数据
db.TableName.find() 查看添加的数据是否成功(如果没有查询到任何的结果,说明添加失败)
推荐学习《python教程》。
‘捌’ 如何使用mongodb数据库工具
1、基于mongo实现远程连接
[plain] view plain
mongo -u admin -p admin 192.168.0.197:27017/pagedb
通过mongo实现连接,可以非常灵活的选择参数选项,参看命令帮助,如下所示:
[plain] view plain
mongo --help
MongoDB shell version: 1.8.3
usage: mongo [options] [db address] [file names (ending in .js)]
db address can be:
foo foo database on local machine
192.169.0.5/foo foo database on 192.168.0.5 machine
192.169.0.5:9999/foo foo database on 192.168.0.5 machine on port 9999
options:
--shell run the shell after executing files
--nodb don't connect to mongod on startup - no 'db address'
arg expected
--quiet be less chatty
--port arg port to connect to
--host arg server to connect to
--eval arg evaluate javascript
-u [ --username ] arg username for authentication
-p [ --password ] arg password for authentication
-h [ --help ] show this usage information
--version show version information
--verbose increase verbosity
--ipv6 enable IPv6 support (disabled by default)
2、基于MongoDB支持的javascript实现远程连接
当你已经连接到一个远程的MongoDB数据库服务器(例如,通过mongo连接到192.168.0.184),现在想要在这个会话中连接另一个远程的数据库服务器(192.168.0.197),可以执行如下命令:
[plain] view plain
> var x = new Mongo('192.168.0.197:27017')
> var ydb = x.getDB('pagedb');
> use ydb
switched to db ydb
> db
ydb
> ydb.page.findOne()
{
"_id" : ObjectId("4eded6a5bf3bfa0014000003"),
"content" : "巴黎是浪漫的城市,可是...",
"pubdate" : "2006-03-19",
"title" : "巴黎:从布鲁塞尔赶到巴黎",
"url" : "http://france.bytravel.cn/Scenery/528/cblsegdbl.html"
}
上述通过MongoDB提供的JavaScript脚本,实现对另一个远程数据库服务器进行连接,操作指定数据库pagedb的page集合。
如果启用了安全认证模式,可以在获取数据库连接实例时,指定认证账号,例如:
[plain] view plain
> var x = new Mongo('192.168.0.197:27017')
> var ydb = x.getDB('pagedb', 'shirdrn', '(jkfFS$343$_\=\,.F@3');
> use ydb
switched to db ydb
‘玖’ 如何用Java操作MongoDB
HelloWorld程序
学习任何程序的第一步,都是编写HelloWorld程序,我们也不例外,看下如何通过Java编写一个HelloWorld的程序。
首先,要通过Java操作Mongodb,必须先下载Mongodb的Java驱动程序,可以在这里下载。
新建立一个Java工程,将下载的驱动程序放在库文件路径下,程序代码如下:
packagecom.mkyong.core;
importjava.net.UnknownHostException;
importcom.mongodb.BasicDBObject;
importcom.mongodb.DB;
importcom.mongodb.DBCollection;
importcom.mongodb.DBCursor;
importcom.mongodb.Mongo;
importcom.mongodb.MongoException;
/**
*Java+MongoDBHelloworldExample
*
*/
publicclassApp{
publicstaticvoidmain(String[]args){
try{
//实例化Mongo对象,连接27017端口
Mongomongo=newMongo("localhost",27017);
//连接名为yourdb的数据库,假如数据库不存在的话,mongodb会自动建立
DBdb=mongo.getDB("yourdb");
//GetcollectionfromMongoDB,databasenamed"yourDB"
//从Mongodb中获得名为yourColleection的数据集合,如果该数据集合不存在,Mongodb会为其新建立
DBCollectioncollection=db.getCollection("yourCollection");
//使用BasicDBObject对象创建一个mongodb的document,并给予赋值。
BasicDBObjectdocument=newBasicDBObject();
document.put("id",1001);
document.put("msg","helloworldmongoDBinJava");
//将新建立的document保存到collection中去
collection.insert(document);
//创建要查询的document
BasicDBObjectsearchQuery=newBasicDBObject();
searchQuery.put("id",1001);
//使用collection的find方法查找document
DBCursorcursor=collection.find(searchQuery);
//循环输出结果
while(cursor.hasNext()){
System.out.println(cursor.next());
}
System.out.println("Done");
}catch(UnknownHostExceptione){
e.printStackTrace();
}catch(MongoExceptione){
e.printStackTrace();
}
}
}
最后,输出的结果为:
{"_id":{"$oid":"4dbe5596dceace565d229dc3"},
"id":1001,"msg":"helloworldmongoDBinJava"}
Done
在上面的例子中,演示了使用Java对Mongodb操作的重要方法和步骤,首先通过创建Mongodb对象,传入构造函数的参数是Mongodb的数据库所在地址和端口,然后使用
getDB方法获得要连接的数据库名,使用getCollection获得数据集合的名,然后通过新建立BasicDBObject对象去建立document,最后通过collection的insert方法,将建立的document保存到数据库中去。而collection的find方法,则是用来在数据库中查找document。
从Mongodb中获得collection数据集
在Mongodb中,可以通过如下方法获得数据库中的collection:
DBCollectioncollection=db.getCollection("yourCollection");
如果你不知道collection的名称,可以使用db.getCollectionNames()获得集合,然后再遍历,如下:
DBdb=mongo.getDB("yourdb");
Setcollections=db.getCollectionNames();
for(StringcollectionName:collections){
System.out.println(collectionName);
}
完成的一个例子如下:
packagecom.mkyong.core;
importjava.net.UnknownHostException;
importjava.util.Set;
importcom.mongodb.DB;
importcom.mongodb.DBCollection;
importcom.mongodb.Mongo;
importcom.mongodb.MongoException;
/**
*Java:GetcollectionfromMongoDB
*
*/
publicclassGetCollectionApp{
publicstaticvoidmain(String[]args){
try{
Mongomongo=newMongo("localhost",27017);
DBdb=mongo.getDB("yourdb");
Set<String>collections=db.getCollectionNames();
for(StringcollectionName:collections){
System.out.println(collectionName);
}
DBCollectioncollection=db.getCollection("yourCollection");
System.out.println(collection.toString());
System.out.println("Done");
}catch(UnknownHostExceptione){
e.printStackTrace();
}catch(MongoExceptione){
e.printStackTrace();
}
}
}
Mongodb中如何插入数据
下面,讲解下如何使用4种方式,将JSON数据插入到Mongodb中去。首先我们准备JSON
格式的数据,如下:
{
"database":"mkyongDB",
"table":"hosting",
"detail":
{
records:99,
index:"vps_index1",
active:"true"
}
}
}
我们希望用不同的方式,通过JAVA代码向Mongodb插入以上格式的JSON数据
第一种方法,是使用BasicDBObject,方法如下代码所示:
BasicDBObjectdocument=newBasicDBObject();
document.put("database","mkyongDB");
document.put("table","hosting");
BasicDBObjectdocumentDetail=newBasicDBObject();
documentDetail.put("records","99");
documentDetail.put("index","vps_index1");
documentDetail.put("active","true");
document.put("detail",documentDetail);
collection.insert(document);
第二种方法是使用BasicDBObjectBuilder对象,如下代码所示:
=BasicDBObjectBuilder.start()
.add("database","mkyongDB")
.add("table","hosting");
Detail=BasicDBObjectBuilder.start()
.add("records","99")
.add("index","vps_index1")
.add("active","true");
documentBuilder.add("detail",documentBuilderDetail.get());
collection.insert(documentBuilder.get());
第三种方法是使用Map对象,代码如下:
MapdocumentMap=newHashMap();
documentMap.put("database","mkyongDB");
documentMap.put("table","hosting");
MapdocumentMapDetail=newHashMap();
documentMapDetail.put("records","99");
documentMapDetail.put("index","vps_index1");
documentMapDetail.put("active","true");
documentMap.put("detail",documentMapDetail);
collection.insert(newBasicDBObject(documentMap));
第四种方法,也就是最简单的,即直接插入JSON格式数据
String json="{'database' : 'mkyongDB','table' : 'hosting',"+
"'detail' : {'records' : 99, 'index' : 'vps_index1', 'active' : 'true'}}}";
DBObject dbObject=(DBObject)JSON.parse(json);
collection.insert(dbObject);
这里使用了JSON的parse方法,将解析后的JSON字符串转变为DBObject对象后再直接插入到collection中去。
完整的代码如下所示:
packagecom.mkyong.core;
importjava.net.UnknownHostException;
importjava.util.HashMap;
importjava.util.Map;
importcom.mongodb.BasicDBObject;
importcom.mongodb.BasicDBObjectBuilder;
importcom.mongodb.DB;
importcom.mongodb.DBCollection;
importcom.mongodb.DBCursor;
importcom.mongodb.DBObject;
importcom.mongodb.Mongo;
importcom.mongodb.MongoException;
importcom.mongodb.util.JSON;
/**
* Java MongoDB : Insert a Document
*
*/
publicclass InsertDocumentApp {
publicstaticvoid main(String[] args){
try{
Mongo mongo=newMongo("localhost",27017);
DB db=mongo.getDB("yourdb");
//get a single collection
DBCollection collection=db.getCollection("mmyColl");
//BasicDBObject example
System.out.println("BasicDBObject example...");
BasicDBObject document=newBasicDBObject();
document.put("database","mkyongDB");
document.put("table","hosting");
BasicDBObject documentDetail=newBasicDBObject();
documentDetail.put("records","99");
documentDetail.put("index","vps_index1");
documentDetail.put("active","true");
document.put("detail", documentDetail);
collection.insert(document);
DBCursor cursorDoc=collection.find();
while(cursorDoc.hasNext()){
System.out.println(cursorDoc.next());
}
collection.remove(newBasicDBObject());
//BasicDBObjectBuilder example
System.out.println("BasicDBObjectBuilder example...");
BasicDBObjectBuilder documentBuilder=BasicDBObjectBuilder.start()
.add("database","mkyongDB")
.add("table","hosting");
BasicDBObjectBuilder documentBuilderDetail=BasicDBObjectBuilder.start()
.add("records","99")
.add("index","vps_index1")
.add("active","true");
documentBuilder.add("detail", documentBuilderDetail.get());
collection.insert(documentBuilder.get());
DBCursor cursorDocBuilder=collection.find();
while(cursorDocBuilder.hasNext()){
System.out.println(cursorDocBuilder.next());
}
collection.remove(newBasicDBObject());
//Map example
System.out.println("Map example...");
Map documentMap=newHashMap();
documentMap.put("database","mkyongDB");
documentMap.put("table","hosting");
Map documentMapDetail=newHashMap();
documentMapDetail.put("records","99");
documentMapDetail.put("index","vps_index1");
documentMapDetail.put("active","true");
documentMap.put("detail", documentMapDetail);
collection.insert(newBasicDBObject(documentMap));
DBCursor cursorDocMap=collection.find();
while(cursorDocMap.hasNext()){
System.out.println(cursorDocMap.next());
}
collection.remove(newBasicDBObject());
//JSON parse example
System.out.println("JSON parse example...");
String json="{'database' : 'mkyongDB','table' : 'hosting',"+
"'detail' : {'records' : 99, 'index' : 'vps_index1', 'active' : 'true'}}}";
DBObject dbObject=(DBObject)JSON.parse(json);
collection.insert(dbObject);
DBCursor cursorDocJSON=collection.find();
while(cursorDocJSON.hasNext()){
System.out.println(cursorDocJSON.next());
}
collection.remove(newBasicDBObject());
}catch(UnknownHostException e){
e.printStackTrace();
}catch(MongoException e){
e.printStackTrace();
}
}
}
‘拾’ 如何在命令行下操作MongoDB数据库
1、Help查看命令提示
[html] view plain
> help
> db.help();
> db.yourColl.help();
> db.youColl.find().help();
> rs.help();
2、切换/创建数据库
[html] view plain
> use yourDB;
当创建一个集合(table)的时候会自动创建当前数据库
3、查询所有数据库
[html] view plain
> show dbs;
4、删除当前使用数据库
[html] view plain
> db.dropDatabase();