最近无事,心情郁闷,不知该做什么事才好。反正也没事,前些日子听JE老大分析了一下键值数据库,由于有些数据库只支持ruby,所以找了一种能支持JAVA的,那就是mongodb,以前虽然也听别人说过键值数据库,但是不感兴趣,现在有那么一点兴趣了,就试一下也无妨。
反正自己对hibernate之类的关系匹配一直不满,现在也开始厌倦关系型数据库了,所以正好有机会试一下其它的数据库。
需要的基本环境:
jdk1.6(官方说的是1.5也可以,但实际上1.5上运行有错,因为驱动包是在1.6上运行的)
mongodb-win32-i386-1.0.1
mongo-1.0.jar
有了上面的基本环境后,就可以做些例子了。但是在做例子之前,可以先了解一下mongodb的基本用法。
启动数据库服务:进入数据库目录的bin目录下,键入:
mongod --dbpath d:/data(参数dbpath必须加上)
进入客户端:
mongo
关闭数据库可直接ctrl+C就行了。
因为没有相应的图形化界面,所以得用些命令才行。有一些命令与原来的mysql基本相似,但有一些则不同,下面是几个常用的命令:
show dbs : Print a list of all databases on this server
use dbname : Set the db variable to represent usage of dbname on the server
show collections : Print a list of all collections for current database
show users : Print a list of users for current database
show profile : Print most recent profiling operations that took >= 1ms
上面是官方文档上列出的几个基本命令,感觉太少,而实际可以使用的命令还有很多,特别是基本的db对象,比如要删除一个数据库:
1.use dbname
2.db.dropDatabase()
详细用法可参考API文档。
上面介绍了一些数据库的常用用法,但实际上真正使用的场合并不多,只是有时候需要验证一下插入的数据才会这么做。
下面将介绍一下,它与java之间的交互。与连接其它的数据库一样,首先得建立数据库连接
Mongo mongo = new Mongo("127.0.0.1", 27017);
DBAddress dbAddress = new DBAddress("localhost","fans");
mongo = new Mongo(dbAddress);
上面代码给出了两种基本的连接方式,第一种会以默认账户test登录,第二种方式就是手动换一个用户名登录。这里也弄出一个问题,那就是连接数据库的时候居然不需要密码,其实这也不算是一个问题,因为mongodb在验证用户是否合法提供了单独的方法,如果要验证一个用户与密码是否合法可以这样:
//增加一个用户,密码需转换成字符数据
db.addUser("fans", "123".toCharArray());
System.out.println(db.authenticate("fans", "123".toCharArray()));
这样控制台会输出true,否则输出false。而且存入密码时不再需要手动加密,这已经由java驱动包做了,存入数据库的密码已经是加过密的了。
下面将介绍如何存入对象:
DBObject user = new BasicDBObject();
user.put("name", "fansof");
user.put("password", "12346");
//如果没有对应的users数据库,数据库会为此创建一个
DB db = mongo.getDB("users");
//如果没有对应的userCollection,数据库会创建一个
DBCollection coll = db.getCollection("userCollection");
DBObject object = new BasicDBObject();
object.put("username", "fans");
object.put("user", user);
coll.insert(object);
上面代码演示了存入对象的基本用法,需要注意的是每个存入的对象必须是mongodb提供的基本对象。存入对象的操作是在DBCollection 中进行的,这也应证了mongodb的主要特点之一:面向集合存储。
以上就是mongodb的基本用法,以后有机会的话,还会详细介绍一些其它的功能。
分享到:
相关推荐
在使用MongoDB做产品原型的过程中,我们总结了MonogDB的一些亮点:使用JSON风格语法,易于掌握和理解:MongoDB使用JSON的变种BSON作为内部存储的格式和语法。针对MongoDB的操作都使用JSON风格语法,客户端提交或接收...
MongoDB开发使用手册.docx 介绍mongodb的基本使用方法
mysql, mongodb, redis三大数据库的基本是用命令, 以及举例
mongodb入门小书,简单快速高效!可以看看,快速了解mongodb的基本用法!
mongodb 数据库基本操作 MongoDB数据库的基本操作涉及... 使用insertOne或insertMany方法向集合中插入文档。insertOne用于插入单个文档,而insertMany用于插入多个文档。 插入数据前,需要指定要插入数据的集合名。如
Node.js的MongoDB驱动Mongoose基本用法教程_.docx
MongoDB介绍及安装 通过samus驱动实现基本数据操作 在MVC模式下通过Jqgrid表格操作MongoDB数据 用MongoDB的文档结构描述数据关系 MongoDB文件存取操作 MongoDB索引用法和效率分析
主要介绍了mongodb基本命令,结合实例形式总结分析了MongoDB数据库切换、查看、删除、查询等基本命令用法与操作注意事项,需要的朋友可以参考下
C# 访问Mongodb数据库,基本进销存的使用. Mongodb 在windows7上面的安装方法.
通过本文的探讨,我们深入了解了如何使用SQL语法操作MongoDB数据库。虽然MongoDB本质上是一个面向文档的NoSQL数据库...因此,开发者在使用时应根据具体需求选择合适的方法,并结合MongoDB的特性和优势来优化数据操作。
使用Spring Data MongoDB和MongoDB 3.0 17.1.1。配置选项 17.1.2。WriteConcern和WriteConcernChecking 17.1.3。认证 17.1.4。服务器端验证 17.1.5。其他事情要注意 附录 附录A:命名空间参考 元素 附录B:Poppers...
通过本文,读者将能够了解Spring Boot与MongoDB的集成方式,掌握在Spring Boot应用程序中操作MongoDB数据库的基本方法。 随着大数据时代的到来,NoSQL数据库因其灵活的数据模型和高性能的特点逐渐受到开发者的青睐。...
第2章 MongoDB基本原理与安装 2.1 数据库结构 2.2 文档 2.3 集合 2.3.1 集合的无模式 2.3.2 集合的命名 2.4 MongoDB数据类型 2.4.1 基本数据类型 2.4.2 数字类型 2.4.3 日期类型 2.4.4 ...
介绍php7.0以上使用mongdb的基本方法,并提供mongodb随机获取一条记录的测试实例。
基本用法 const SqliteToMongo = require('sqlite-to-mongo'); var importer = new SqliteToMongo('db.sqlite', 'mongodb://localhost/dbname', function () { importer.importCollection('newMongoCollection', { ...
52.2 集合 62.2.1 无模式 62.2.2 命名 72.3 数据库 82.4 启动MongoDB 92.5 MongoDB shell 102.5.1 运行shell 102.5.2 MongoDB客户端 112.5.3 shell中的基本操作 112.5.4 使用shell的窍门 132.6...
springMVC+MongoDB实现基本的登录注册以及增删改查 用到idea,MongoDB4.0.5版本,java8,tomcat9,spring4.0.0jar,spring-data-mongodb1.5.5jar...其中还有一个测试类,有MongoTemplate的基本方法(增删改查等)。
MongoDB中的索引其实类似于关系型数据库,都是为了提高查询和排序的效率的,并且实现原理也基本一致。由于集合中的键(字段)可以是普通数据类型,也可以是子文档。MongoDB可以在各种类型的键上创建索引。下面分别讲解...
82.4 启动MongoDB 92.5 MongoDB Shell 102.5.1 运行shell 102.5.2 MongoDB 客户端 112.5.3 shell 中的基本操作 112.5.4 使用shell 的窍门 132.6 数据类型 152.6.1 基本数据类型 152.6.2 数字 172....