由于好长时间没有使用mongodb , 而且以前也没有做相关的记录 今天特意过来做一份 记录
1. 官方网站
mongodb 是一个非关系型数据库 , 致力于大数据量处理 不过在我使用的过程中 感觉他也是那种文档类型的 牺牲空间换取时间的做法
2. 下载
下载地址
http://www.mongodb.org/downloads
数据库驱动地址
https://github.com/mongodb/mongo-java-driver/downloads
安装十分简单 只需要直接解压即可
进入 安装目录/bin 运行 mongod 命令即可
mongod 系统参数在此简单介绍几个
-- auth run with security 如果你加上这个参数 那么你只能查看你拥有权限的数据库
-- logpath arg 日志目录
-- logappend append to logpath instead of over-writing
-- dbpath 数据库文件存放位置
其他的功能请自行查看
简单的启动命令可谓 mongod --dbpath D://mongodb/db --logpath D://mongodb/log.log --logappend
windows 下 可以采用命令加入服务
Windows Service Control Manager options:
--install install mongodb service
--remove remove mongodb service
--reinstall reinstall mongodb service (equivilant of mongod
--remove followed by mongod --install)
--service start mongodb service
--serviceName arg windows service name
--serviceUser arg user name service executes as
--servicePassword arg password used to authenticate serviceUser
linux 下 自行将命令加入到启动文件中
3 基本命令
官方链接 http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24mod
采集官方一些例子 主要是采用命令 和 sql 命令比较的方式 我想这个也比较直观
// 下面介绍一下 $where
首先说下 在能使用mongodb 提供的操作符 的情况下不要使用 $where
$where 的条件是JS 函数 也就意味着你可以使用JS 函数
可能刚接触的人 在转换为java 代码的时候有点困难
这边有点总结 mongodb 他使用的是BSON 格式 是他自定义的 类似于JSON
他的每一个 大括号 标示一个对象 然后 BSON 格式 java 中 也有 一个 DBObject 对象 对应
如条件 {$where: "this.a > 3"} = new BasicDBObject("$where","this.a > 3");
可能记得不太清楚了 大概是这么写的 这样的话 在复杂的条件 你也可以很轻松的转换过来
4.java帮助类
附上一个java的帮助类 可能设计不好 表达个意思
其他的特性 有空在记录