下载地址:
mongodb 官方文档下载地址:
db/docs/mongodb-docs-2012-09-19.pdf
十天精通mongodb 下载地址(强烈建议看下,其中包含对mongodb的详细介绍):
www.kuaipan/file/id_45545890496119199.htm
如果你对mongodb希望有更多的了解(其中为mongodb资料专题):
/html/3548.html
mongodb管理工具下载地址:
www.kuaipan/file/id_45545890496119201.htm
2.1. 环境配置
在这里提供针对windows7 系统的配置方案
2.2. Windows7安装mongodb
歌颂祖国演讲稿mongodb及其管理工具下载地址参见准备章节!
mongodb启动命令参数详见:
my.oschina/jacky0525/blog/33048
2.2.1. 配置环境变量
1、在系统环境变量中添加MONGODB_HOME如图所示:
综评教师端
2、在PATH中添加%MONGODB_HOME%\bin 如图所示:
在mongodb 目录中 新建 data 和 log 文件夹(为启动时做准备)
2.2.2. 启动配置mongodb
进入DOS命令窗口 输入一下命令:
mongod --dbpath D:\mongodb\data --logpath D:\mongodb\log --logappend --directoryperdb
--dbpath数据库安装目录
--logpath 数据库输出目录
--logappend 日志追加,默认为覆盖
--directoryperdb 表示每个db一个目录
执行命令之后 开启新的 DOS窗口 执行 mongo 输出
表示启动成功。
目前是以无权限限制的方式启动的,你可以做任何操作。现在我们需要切换到admin下,创建一个root用户。执行命令:
show dbs 显示所有db
维生素e可以擦脸吗 u admin 使用admin db
db 显示当前使用的db
db.addUr(”root”,”root”); 添加用户,用户名为root 密码为 root
db.auth(”root”,”root”); 为用户授权
这样我们就为admin db创建好用户,接下来以权限限制方式启动mongodb(记得关掉之前开启的服务),执行命令(在之前启动命令中添加参数-auth即可):
mongod --dbpath D:\mongodb\data --logpath D:\mongodb\log --logappend --auth –directoryperdb
-auth 安全模式下运行
接下来使用之前授权的用户名密码登录,打开新的DOS命令窗口输入如下命令:
mongo 数据库名称 –u 用户名 –p 密码
mongo admin –u root –p root
注意:为了启动方便可以把mongodb加入windows系统rvice
以管理员身份打开DOS命令窗口键入如下命令:
mongod --dbpath D:\mongodb\data --logpath D:\mongodb\log --logappend --auth --directoryperdb –install
这时候会在系统服务中增加 mongo db 项
第一次配置完成后,一定要重启才会有效果 重启mongo客户端,不输入-u-p可以直接进入,但是不具有任何权限。
3. Spring-data-mongodb
3.1. 背景
SQL or NoSQL?That’s a question! SQL 与 NoSQL 的争论从来没有停息过,但其实任何
一种技术都不会是适合一切应用场景的,重要的是你要充分了解自己的需求,再充分了解你要选择的技术的优劣。
优势:
快速!(当然,这和具体的应用方式有关,通常来说,它比一般的关系型数据库快5位左右。)
很高的可扩展性 – 轻轻松松就可实现PB级的存储(但是可能我们并不需要PB级的存储,10TB可能就够了)
他有一个很好的 replication 模式 (replica ts)
有很完善的Java API
他的存储格式是Json的,这对Java来说非常好处理,对javascirpt亦然。
运维起来非常方便,你不用专门为它安排一个管理员。
它有一个非常活跃的社区。
他的版本控制非常清楚。
MongoDB 背后的公司(10gen)已经准备好了明天在 MongoDB 上面的投入的资金。
劣势:
应用经验缺乏,我们都没有相关NoSQL 产品的使用经验。
项目相对来说还比较新。
和以往的存储相比,数据的关系性操作不再存在。
常用Jar:
spring-data-mongodb
智者千虑下一句mongo-java-driver
spring-core
相关JAR在MAVEN包管理中搜索选择对应版本即可
徐永生3.1.1. 高级API
3.1.2. 低级API
3.2. MongoDbFactory
就像所有的数据库连接,mongoDbFactory就是连接工厂,通过配置单台服务器或者连接池(pool)的方式获取Mongodb服务器的连接。
3.3. MongoTemplate
就像Spring提供的JDBC,hibernate和ibatis的template一样,spring-data-mongodb也提供了一个基础的泛型MongoTemplate供开发者可以快速的利用代码完成基础的crud工作。在实践中可以考虑完全省去dao层的设计,直接在rvice层注入相应的template实例。 在此推荐写一个Repository<T>接口 其中提供对mongodb的CRUD操作。
3.4. Operations
其实所有的操作都是直接映射Mongodb本身提供的命令行,Spring-data-mongodb文档来
操作。官网提供的API Javadoc有问题报404,只能看HTML版的参考手册:static.springsource/spring-data/data-mongodb/docs/current/reference/html/