设为首页 加入收藏

TOP

Java操作MongoDB2.6的常见API用法(一)
2014-11-23 23:19:37 来源: 作者: 【 】 浏览:17
Tags:Java 操作 MongoDB2.6 常见 API 用法

对于MongoDB而言,学习方式和学习关系型数据库差不太多


开始都是学习如何insert、find、update、remove,然后就是分页、排序、索引,再接着就是主从复制、副本集、分片等等


最后就是通过它提供的各个驱动(比如Java、PHP、node.js等等)来练习所谓的高级用法


mongoDB也不例外,它的图形化工具中有一款叫做mongoVUE的,我用的是1.5.3破解版(不是每15天就得改一次注册表的那种)


下面演示的就是以Java为例,常见的操作mongoDB API用法


package com.jadyer.test;


import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.List;


import org.bson.types.ObjectId;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;


import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoClient;
import com.mongodb.WriteResult;
import com.mongodb.util.JSON;


/**
* mongoDB的Java驱动测试
* @see ----------------------------------------------------------------------------------------
* @see 配置
* @see 1)下载https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-2.6.1.zip
* @see 2)解压到本地硬盘D:\Develop\mongoDB\中,并配置环境变量path=D:\Develop\mongoDB\bin
* @see 然后在CMD下执行此命令验证安装成功与否>mongod --version
* @see 3)建立D:\Develop\mongoDBData\文件夹,用于存放mongoDB数据文件
* @see 4)自定义bat文件,分别用于启动mongoDB数据库和连接数据库的客户端
* @see 启动客户端的mongo_client.bat内容为-->mongo 127.0.0.1:27017/admin
* @see 启动数据库的mongo_db.bat内容为------>mongod --dbpath D:\Develop\mongoDBData --rest
* @see 注:加入[--rest]参数是为了能够访问mongoDB的Web控制台http://127.0.0.1:28017/
* @see ----------------------------------------------------------------------------------------
* @see Java驱动
* @see 这里要用到mongoDB的Java驱动包,下载地址http://docs.mongodb.org/ecosystem/drivers/java/
* @see ----------------------------------------------------------------------------------------
* @create May 15, 2014 10:17:30 PM
* @author 玄玉
*/
public class MongoDBTest {
private static MongoClient mongoClient;
private static DB db;

/**
* 建立数据库连接
*/
@BeforeClass
public static void globalInit(){
try {
//mongoClient = new MongoClient(Arrays.asList(new ServerAddress("127.0.0.1", 27017), new ServerAddress("127.0.0.1", 27018), new ServerAddress("127.0.0.1", 27019)));
mongoClient = new MongoClient("127.0.0.1", 27017);
} catch (UnknownHostException e) {
System.err.println("mongoDB主机地址有误");
}
db = mongoClient.getDB("mydemo");
}


/**
* 销毁数据库连接
*/
@AfterClass
public static void globalDestroy(){
mongoClient.close();
}


/**
* 获取数据库信息
*/
@Test
public void getMetaData(){
//查询数据库中所有的集合名称
for(String collectionName : db.getCollectionNames()){
System.out.println("mydemo数据库所拥有的集合为:[" + collectionName + "]");
}
//查询某一集合中的数据
DBCollection collection = db.getCollection("person");
DBCursor cursor = collection.find();
try{
while(cursor.hasNext()){
System.out.println("person集合所拥有的name为--[" + cursor.next().get("name") + "]");
}
}finally{
cursor.close();
}
System.out.println("person集合中的记录数为----------->" + cursor.count());
System.out.println("person集合数据格式化后的JSON串为-->" + JSON.serialize(cursor));
}


/**
* 创建一个空的"moive"集合
*/
@Test
public void createCollection(){
db.createCollection("movie", new BasicDBObject());
}


/**
* 为"moive"集合添加文档
*/
@Test
public void insertDocument(){
DBObject doc = new BasicDBObject();
doc.put("name", "24");
doc.put("season", "ninth");
doc.put("score", 88);
List actorList = new Arr

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android WebView 实现网页加载进度 下一篇Java内存映射文件实现多线程下载

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: