转载请注意出处:http://blog.csdn.net/zcm101

最近在学习NoSql,先从Mongodb入手,把最近学习的总结下。

Mongodb下载安装

Mongodb的下载安装就不详细说了,Mongodb是绿色免安装的,我装的是win32版本,点击下载,其它版本可以官网上下载,下载完后解压到E:\mongodb目录下,即E:\mongodb\mongodb-2.4.0,新建E:\mongodb\data文件夹,data用来存放数据库数据。

Mongodb启动关闭

启动命令行

cd E:\mongodb\mongodb-2.4.0\bin

mongod -dbpath E:\mongodb\data     ——即启动数据库,并把E:\mongodb\data作为数据库存放路径,默认端口:27017

关闭的话很简单,直接在命令窗口Ctrl + C

访问Mongodb数据库

启动Mongodb的命令窗口不要动,新打开个命令窗口:

cd E:\mongodb\mongodb-2.4.0\bin

mongo.exe  ——默认访问 localhost:27017

进去后就可以打些mongodb命令看看了,比如:db,  db.getName()等,更多的命令网上找吧

java操作mongodb

不同的语言均可访问mongodb,为了java能访问mongodb,需要下载java驱动,mongo-2.10.1.jar

在eclipse中新建java项目,并添加mongo-2.10.1.jar,下面是我的测试类

package com.test;

import java.net.UnknownHostException;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo; public class Main { private static Mongo mongo; private static DB db; private static DBCollection userInfos; private static void init() throws UnknownHostException{
mongo = new Mongo();
db = mongo.getDB("test");
for(String colName: db.getCollectionNames()){
print(colName);
}
userInfos = db.getCollection("userInfo");
}
public static void main(String[] args) {
try {
init();
// db.dropDatabase();
// add("test1", 11, "man");
// add("test2", 12, "man");
// add("test3", 13, "man");
// add("test4", 14, "man");
// remove("test2", 12, "");
findAll();
} catch (UnknownHostException e) {
e.printStackTrace();
}
} public static void findAll(){
DBCursor cur = userInfos.find();
while (cur.hasNext()) {
print(cur.next());
}
} public static void remove(String name, int age, String sex){
DBObject userInfo = new BasicDBObject();
if(name != null && name != ""){
userInfo.put("name", name);
}
if(age > 0){
userInfo.put("age", age);
}
if(sex != null && sex != ""){
userInfo.put("sex", sex);
} userInfos.remove(userInfo);
} public static void add(String name, int age, String sex) {
DBObject userInfo = new BasicDBObject();
userInfo.put("name", name);
userInfo.put("age", age);
userInfo.put("sex", sex); userInfos.insert(userInfo);
} public static void print(Object obj){
System.out.println(obj);
}
}

执行过add后,输出结果:

system.indexes
userInfo
{ "_id" : { "$oid" : "521eebd8e617429aebd917e1"} , "name" : "test1" , "age" : 11 , "sex" : "man"}
{ "_id" : { "$oid" : "521eebd8e617429aebd917e2"} , "name" : "test2" , "age" : 12 , "sex" : "man"}
{ "_id" : { "$oid" : "521eebd8e617429aebd917e3"} , "name" : "test3" , "age" : 13 , "sex" : "man"}
{ "_id" : { "$oid" : "521eebd8e617429aebd917e4"} , "name" : "test4" , "age" : 14 , "sex" : "man"}

Mongodb是文档型数据库,数据存储格式是json,不需要初始新建数据库,表,字段等,在连接mongodb并操作时,会自动创建。

下一篇将会介绍使用spring的mongoTemplate操作mongodb。

Mongodb入门并使用java操作Mongodb的更多相关文章

  1. Mongodb快速入门之使用Java操作Mongodb

    [IT168 专稿]在上一篇文章中,我们学习了Mongodb的安装和初步使用,在本文中,将学习如何使用Java去编程实现对Mongodb的操作. HelloWorld程序 学习任何程序的第一步,都是编 ...

  2. MongoDB(六)java操作mongodb增删改查

    java操作mysql数据库的代码我们已经了如指掌了.增删改查,java对mongodb数据库也是类似的操作,先是数据库连接.再是进行操作. 首先我们进入进入admin数据库.然后建立自己的数据库te ...

  3. MongoDB(3)--Java 操作 MongoDB 的 API

    引入mongoDb 依赖 <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-j ...

  4. 【MongoDB for Java】Java操作MongoDB

    上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html介绍到了在MongoDB的控制台完成MongoDB的数据操作,通过 ...

  5. JAVA操作MongoDB数据库

    1. 首先,下载MongoDB对Java支持的驱动包 驱动包下载地址:https://github.com/mongodb/mongo-java-driver/downloads 2.Java操作Mo ...

  6. [转]MongoDB for Java】Java操作MongoDB

    原文地址: MongoDB for Java]Java操作MongoDB 开发环境: System:Windows IDE:eclipse.MyEclipse 8 Database:mongoDB 开 ...

  7. Java操作MongoDB

    上一篇文章: http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html 介绍到了在MongoDB的控制台完成MongoDB的数据操作,通 ...

  8. 浅谈如何用Java操作MongoDB

    NoSQL数据库因其可扩展性使其变得越来越流行,利用NoSQL数据库可以给你带来更多的好处,MongoDB是一个用C++编写的可度可扩展性的开源NoSQL数据库.本文主要讲述如何使用Java操作Mon ...

  9. java操作mongodb(连接池)(转)

    原文链接: java操作mongodb(连接池) Mongo的实例其实就是一个数据库连接池,这个连接池里默认有10个链接.我们没有必要重新实现这个链接池,但是我们可以更改这个连接池的配置.因为Mong ...

随机推荐

  1. Oracle EBS-SQL (WIP-7):检查当月任务发放记录.sql

    select        WE.DESCRIPTION                                                任务说明,        DECODE(WE.S ...

  2. ubuntu常用命令(转)

    1.打开终端的方法 Ubuntu 中按左侧栏的第一个“面板主页(Dash 主页)”(可以按win键调出),在里面输入terminal可以打开终端,另外打开终端的快捷键是Ctrl+Alt+T 2.修改用 ...

  3. 第52周四ApplicationContext

    ApplicationContext的中文意思是"应用前后关系"应用上下文即容器,它继承自BeanFactory接口,除了包含BeanFactory的所有功能之外,在国际化支持.资 ...

  4. aix运维

    AIX操作系统中有很多程序,为了进行程序版本控制,每一个程序集都有自己的版本号.版本号是由小数点分隔的四位数字,例如5.3.0.9其含义是:操作系统版本号(version).发行版本号(release ...

  5. 网易云课堂_程序设计入门-C语言_第二周:判断_2信号报告

    2 信号报告(5分) 题目内容: 无线电台的RS制信号报告是由三两个部分组成的: R(Readability) 信号可辨度即清晰度. S(Strength)    信号强度即大小. 其中R位于报告第一 ...

  6. iOS 开发的几种手势

    今天为大家介绍一下IOS 的七种手势,手势在开发中经常用到,所以就简单 通俗易懂的说下, 话不多说,直接看代码: // 初始化一个UIimageView UIImageView *imageView ...

  7. 为Spring添加REST功能

    1 关于REST 我的理解,REST就是将资源以最合适的形式在服务端和客户端之间传递. 系统中资源采用URL进行标识(可以理解为URL路径中带参数) 使用HTTP方法进行资源的管理(GET,PUT,P ...

  8. MySQL存储过程的基本函数

    (1).字符串类 CHARSET(str) //返回字串字符集 CONCAT (string2 [,... ]) //连接字串 INSTR (string ,substring ) //返回subst ...

  9. python代码中pass的用法

    我们有时会在方法中写一些注释代码,用来提示这个方法是干嘛的之类,看下面代码: class Game_object: def __init__(self, name): self.name = name ...

  10. js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码

    获取浏览器窗口的可视区域高度和宽度,滚动条高度有需要的朋友可参考一下.IE中,浏览器显示窗口大小只能以下获取: 代码如下复制代码 代码如下: document.body.offsetWidth doc ...