您的位置:首页 > 数据库 > Mongodb

Java操作MongoDB

2016-08-30 09:56 344 查看
1.首先介绍一下比较常用的几个类

Mongo:连接服务器,执行一些数据库操作的选项,如新建立一个数据库等

DB:对应一个数据库,可以用来建立集合等操作

DBCollection:对应一个集合(类似表),可能是我们用得最多的,可以添加删除记录等

DBObjec:接口和BasicDBObject对象:表示一个具体的记录,BasicDBObject实现了DBObject,因为是key-value的数据结构,所以用起来其实和HashMap是基本一致的

DBCursor:用来遍历取得的数据,实现了Iterable和Iterator

2.建立连接

Mongo db = new Mongo("mydb");

Mongo db = new Mongo("localhost", "mydb");

Mongo db = new Mongo("localhost", 27017, "mydb");

3.安全验证(输入用户名和密码)

boolean auth = db.authenticate(userName, password);

4.获取集合列表(数据表)

Set colls = db.getCollectionNames();

5.获得一个集合

DBCollection coll = db.getCollection("testCollection");

6.插入文档(记录)

BasicDBObject doc = new BasicDBObject();

doc.put("name", "MongoDB");

doc.put("type", "database");

doc.put("count", 1);

coll.insert(doc);

7.使用findOne()查找集合中第一个文档

DBObject myDoc = coll.findOne();

8.统计记录数量

coll.getCount();

9.使用光标(cursor)来获取全部文档

DBCursor cur = coll.find();

10.查询单一文档

BasicDBObject query = new BasicDBObject();

query.put("i", 71);

cur = coll.find(query);

11.创建索引

MongoDB支持索引,而且很容易在集合上增加索引。要创建索引,只需要指定要加索引的属性,并且指定升序(1)或降序即可(-1)。

coll.createIndex(new BasicDBObject("i", 1));

12.获取索引

List list = coll.getIndexInfo();

13.MongoDB管理函数

管理函数在com.mongodb.MongoAdmin类中定义。

MongoAdmin admin = new MongoAdmin();

例A:获取数据库列表

admin.getDatabaseNames())

例B:获取数据库对象

Mongo m = admin.getDB("mydb");

例C:删除数据库

admin.dropDatabase("mydb")

14.用DBObject存储JAVA对象

需要实现DBObject接口

public class Tweet implements DBObject{}

当一个文档从MongoDB中取出时,它会自动把文档转换成DBObject接口类型,要将它实例化为你的对象,需使用DBCollection.setObjectClass()。

例:

collection.setObjectClass(Tweet);

Tweet myTweet = (Tweet)collection.findOne();

15.JAVA驱动的并发性

如果你需要在一个会话(例如HTTP请求)中保证事务一致性,也许你会希望在这个会话中对驱动使用同一个端口。这仅仅在

请求量非常大的环境中,例如你经常会读取刚写入的数据。

为了这一点,你需要使用如下代码:

DB db = null;

db.requestStart();

// code.........

db.requestDone();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库