mongodb学习总结

最近工作不是太忙,所以抽些时间学习一下mongodb。由于很久没有与数据库有关的工作了,同时以前也主要使用关系型数据库,所以对nosql数据库还直接不熟悉,但随着大数据时代的到来,不得不学习新型的数据库。

1、mongodb安装

windows安装包下载地址:http://www.mongodb.org/dr//fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-2.6.6-signed.msi/download

linux安装包下载地址:http://www.mongodb.org/dr//fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.6.tgz/download

        mongodb客户端工具:mongoVUE,百度一下

我选择的是linux环境安装,安装步骤如下:

1)、把文件上传到/usr/local目录(可任意目录);

2)、解压安装文件:tar -zxvf mongodb-linux-x86_64-2.6.6.tgz

3)、建立安装目录:

#mkdir /usr/local/mongodb

#cd /usr/local/mongodb

#mkdir data  //数据库存放目录

#mkdir logs //日志存放目录

#mv /usr/local/mongodb-linux-x86_64-2.6.6/* /usr/local/mongodb;

2、启动mongodb

可通过命令mongod -h查看启动项。进到安装目录的bin下,mongo为客户端连接文件,mongod为启动文件

#cd /usr/local/mongodb

#./bin/mongod --dbpath=/usr/local/mongodb/data/ --fork --logpath=/usr/local/mongodb/logs/mongo.log --httpinterface

#ps -ef |grep mongodb  //查询启动是否成功


#netstat -tlunp |grep mongod



上图证明启动成功。

==========================================安装结束=============================================

2、java操作mongodb

1)、jar:mongo-java-driver-2.12.1.jar

2)、编写一个简单的类,详细方法可查看API

package com.demo.util.mongodb;


import static org.junit.Assert.assertEquals;


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


import org.bson.BSONObject;
import org.bson.types.ObjectId;
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.ServerAddress;
/***
 * mongodb学习类
 * @author wuql
 *
 */
public class MongoDBUtil {
private static final String SERVICE = "192.168.8.113";

private static final MongoClient mclient ;
private static final DB db ;
static {
List<ServerAddress> serverList = new ArrayList<ServerAddress>();
try {
ServerAddress server = new ServerAddress(SERVICE);
serverList.add(server);
} catch(UnknownHostException e){
e.printStackTrace();
}
mclient = new MongoClient(serverList);
db = mclient.getDB("demo");
}

//@Test
public void save(){
DBCollection dbc = db.getCollection("demo");
DBObject dbo = new BasicDBObject();
dbo.put("context","test mongodb success" );
dbc.save(dbo);
assertEquals(true, true);
}

@Test
public void get(){
DBCollection dbc = db.getCollection("demo");
long count = dbc.getCount();
System.out.println(count);

DBCursor cursor = dbc.find();
while(cursor.hasNext()){
DBObject obj = cursor.next();
//System.out.println(obj.get("_id"));
System.out.println(obj.get("context"));
}
update();
//id=54a8db0e9a707f6d02ce7c56
DBCursor objId = dbc.find(new BasicDBObject("_id",new ObjectId("54a8db0e9a707f6d02ce7c56")));
System.out.println(objId.next().get("context"));
}

public void update(){
DBCollection dbc = db.getCollection("demo");
dbc.update(new BasicDBObject("_id", new ObjectId("54a8db0e9a707f6d02ce7c56")),
new BasicDBObject("context", "update contex success"));
}
@Test
public void del(){
DBCollection dbc = db.getCollection("demo");
dbc.remove(new BasicDBObject("_id",new ObjectId("54a8db0e9a707f6d02ce7c56")));
System.out.println(dbc.getCount());
}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值