相比于java调用MySqlApI来操作数据库,调用Mongo要简洁容易的多。通过一个简单的样例,很容易地就可以上手

一、导入Jar包

添加Monog支持Java的jar包,这里使用的是2.9.3

<dependency>
		<groupId>org.mongodb</groupId>
		<artifactId>mongo-java-driver</artifactId>
		<version>2.9.3</version>
</dependency>

二、一个简单的样例

// 连接到mongodb
Mongo mongo = new Mongo("localhost", 27017);
 // 打开数据库test
DB db = mongo.getDB("test");
//获取表,emp为表的名字,若表不存在则会自行创建
DBCollection coll = db.getCollection("emp");
//创建记录对象,append的作用是添加属性值
BasicDBObject doc = new BasicDBObject("name", "fzj").append("sex",
				"man");
//在数据库表中添加记录
coll.insert(doc);

三、自己写的接口实现类(CURD)

通过上面的简单样例,只要接触过数据库和了解一些Mongo的语法。相信接口实现类很容易看懂

public class DBImpl implements DBTool {

	static DB db;
	static {

		Mongo mongo;
		try {
			mongo = new Mongo("localhost", 27017);
			db = mongo.getDB("test");
		} catch (UnknownHostException e) {
			e.printStackTrace();
		}
	}

	@Override
	public void insert(String tableName, BasicDBObject dbObject)
			throws UnknownHostException {
		DBCollection coll = db.getCollection(tableName);
		coll.insert(dbObject);
	}

	@Override
	public void delete(String tableName, BasicDBObject dbObject)
			throws UnknownHostException {
		DBCollection coll = db.getCollection(tableName);
		coll.remove(dbObject);
	}

	@Override
	public void update(String tableName, BasicDBObject docFind,
			BasicDBObject doc) throws UnknownHostException {
		DBCollection coll = db.getCollection(tableName);
		coll.update(docFind, doc);
	}

	@Override
	public DBObject find(String tableName, BasicDBObject dbObject)
			throws UnknownHostException {
		DBCollection coll = db.getCollection(tableName);
		return (DBObject) coll.find();
	}

}

参考

[1] 《mongodb-java-driver基本用法》 http://www.cnblogs.com/yjmyzz/p/3865175.html

MONGODB(三)——Java操作Mongo的更多相关文章

  1. rocketmq(三 java操作rocket API, rocketmq 幂等性)

    JAVA操作rocketmq: 1.导入rocketmq所需要的依赖: <dependency> <groupId>com.alibaba.rocketmq</group ...

  2. java操作mongo

    语法正确时,字段不匹配时,Mongo并不会抛出异常,这在语句调试时需多加注意. mongo自身的时间存储格式与java中的并不是完全匹配,Mongo采用UTC格式,而java中一般为GMT格式,有个时 ...

  3. MongoDB三-高级操作

    复制来自:http://www.cnblogs.com/huangxincheng/archive/2012/02/21/2361205.html 今天跟大家分享一下mongodb中比较好玩的知识,主 ...

  4. java拾遗5----Java操作Mongo入门

    Java操作Mongo入门 参考: http://api.mongodb.com/java/3.2/ http://www.runoob.com/mongodb/mongodb-java.html h ...

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

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

  6. Java 操作mongodb

    package cn.test.db; import java.io.File; import java.io.IOException; import java.net.UnknownHostExce ...

  7. 浅谈如何用Java操作MongoDB

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

  8. Java操作Mongodb(转载)

    好文章,值得收藏 HelloWorld程序 学习任何程序的第一步,都是编写HelloWorld程序,我们也不例外,看下如何通过Java编写一个HelloWorld的程序. 首先,要通过Java操作Mo ...

  9. [转载]使用Java操作Mongodb

    HelloWorld程序 学习任何程序的第一步,都是编写HelloWorld程序,我们也不例外,看下如何通过Java编写一个HelloWorld的程序. 首先,要通过Java操作Mongodb,必须先 ...

随机推荐

  1. ok6410 android driver(10)

    From this essay, we go to a new discussion "Android Hardware Abstraction Layer". In this e ...

  2. python学习笔记 - 初识socket

    socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. sock ...

  3. Memcached入门

    Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载. 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度. Memcache ...

  4. .net 读书笔记

    好书不能只读一遍,这两天又翻看了一遍<你必须知道的.NET>,重温了下基础,重温了下经典,简单记录了下来. 内存分配:CLR 管理内存的区域,主要有三块,分别为: 线程的堆栈,用于分配值类 ...

  5. .NET Framework 4.0之Tuple(元组)

    Tuple,是函数式编程的概念之一,早见于Elang.F#等动态语言.Tuple类型像一个口袋,在出门前可以把所需的任何东西一股脑地放在里面.您可以将钥匙.驾驶证.便笺簿和钢笔放在口袋里,您的口袋是存 ...

  6. 帝吧出征FB:这李毅吧的“爆吧”文化是如何形成的

    声明:本文不对爆吧行为及其涉及的事件进行是非判断,只探讨帝吧文化本身,欢迎拍砖.更正和补充. 一.“帝吧FB出征”事件梳理 继上次全网集体骂 “薯片”事件后,昨日(1月20日)晚7点,又发生了一次互联 ...

  7. [模仿][JS]新浪财经7*24直播

    使用新浪财经7*24直播的数据 简单的做一个山寨品 在线地址:[痛苦啊,有GFW,却没有vpn,往heroku上传浪费了好多时间...] http://wangxinsheng.herokuapp.c ...

  8. BINARY SEARCH in read table statement

    1.for standard table, it must be sorted by search key. 2.for sorted table , binary search is used au ...

  9. 关于在EXCEL中输入01-01-01被转换为2001/1/1怎么解决

    当向EXCEL写入类似'01-01-01'或'01-01'这样的数据时,打开EXCEL时会发现数据变成了2001/1/1和1月1日. 这是由于EXCEL自动转换功能,我们得要在输入前多加一个’号. 而 ...

  10. 使用Python给要素添加序号

    在ArcGIS的属性表中,由于编辑修改的原因,默认的FID或OID并不连续,经常需要给要素添加连读的序号,可使用Python代码完成. rec=-1 def autoIncrement(): glob ...