Mongodb 下载地址:http://www.mongodb.org/downloads
Mongodb? java 驱动下载地址:https://github.com/mongodb/mongo-java-driver/downloads
?
下载完数据库,首先启动数据库。
在cmd中找到存放mongodb的盘符,然后运行mongod,如下:
E:\mongodb-win32\bin>mongod
会提示启动不成功,默认会去找一个/data/db的目录来存放数据库文件,如果找不到提示启动失败。
1.可以在这个盘符的根目录建一个/data/db目录,然后运行mongod,发现会生成相关的数据库文件。
2. 也可以指定一个目录来存放文件,命令是:mongod --dbpath?? E:\mongodb-win32\data,会发现提示启动成功。
?默认情况下,mongodb 使用的是27017端口, mongod还会启动一个http服务器,监听数字比数据库端口高1000,所以可以通过http://localhost:28017/?来访问。本应用显示的数据库的一些管理信息。
?
接下来就可以连接数据库了。
E:\mongodb-win32\bin>mongo
MongoDB shell version: 2.4.6-pre-
connecting to: test
连接成功了,接下来创建数据库。
> use base
switched to db base
创建了base数据库文件,并切换到base数据库上。
显示数据库:
> show dbs
base??? (empty)
local?? 0.03125GB
保存数据到UserInfo这个表,如果表不存在则创建:
> db.UserInfo.save({userName:"ssg"})
?
查询这张表,你会发现他自动生成了一个_id:
> db.UserInfo.find()
{ "_id" : ObjectId("51f8c09fe33adc1be42c469d"), "userName" : "ssg" }
?
查看当前连接的数据库有哪些表
> show collections
UserInfo
system.indexes
?
再插入一条:
> db.UserInfo.save({userName:"asd",sex:"1",mobile:"131000000000"})
查询:
> db.UserInfo.find()
{ "_id" : ObjectId("51f8c09fe33adc1be42c469d"), "userName" : "ssg" }
{ "_id" : ObjectId("51f8d570e33adc1be42c469e"), "userName" : "asd", "sex" : "1",
?"mobile" : "131000000000" }
?
下面删除这条数据(删除username是ssg的数据):
> db.UserInfo.remove({username:"ssg"})
> db.UserInfo.find()
{ "_id" : ObjectId("51f8c09fe33adc1be42c469d"), "userName" : "ssg" }
{ "_id" : ObjectId("51f8d570e33adc1be42c469e"), "userName" : "asd", "sex" : "1",
?"mobile" : "131000000000" }
我们发现,为什么没有删除掉呢? 因为mongodb是大小写区分的,username和userName不一样。
下面这样删除一下就好了。
> db.UserInfo.remove({userName:"ssg"})
> db.UserInfo.find()
{ "_id" : ObjectId("51f8d570e33adc1be42c469e"), "userName" : "asd", "sex" : "1",
?"mobile" : "131000000000" }
?最后还发现一个秘密:就是mongodb 是一个功能完备的javascript解释器,可以运行任何javascript程序,神奇啊。
?