相比于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. 如何单独启动wamp 中自带的MySQL

    前言:Wamp集成了Apache.MySQL和PHP环境.使用Wamp进行网站开发,是很多网站开发爱好者的选择.同时,其集成的MySQL服务,也常被用于MySQL的开发.这个时候我们只是想启动MySQ ...

  2. C#客户端Redis服务器的分布式缓存

    介绍 在这篇文章中,我想介绍我知道的一种最紧凑的安装和配置Redis服务器的方式.另外,我想简短地概述一下在.NET / C#客户端下Redis hash(哈希类型)和list(链表)的使用. 在这篇 ...

  3. Sql订阅发布注意事项

    1.做订阅发布的2台Sql服务器最好要版本一致,不能出现类似如下情况: Sql2008 R2[发布] - Sql2008[订阅]: Sql2008 R2[发布] - Sql2012[订阅] 2.订阅发 ...

  4. C#获取url中参数键值对的方法

    方法如下: /// <summary> /// 遍历Url中的参数列表 /// </summary> /// <returns>如:(?userName=keley ...

  5. Python入门笔记(26):Python执行环境

    一.python特定的执行环境 在当前脚本继续进行 创建和管理子进程 执行外部命令或程序 执行需要输入的命令 通过网络来调用命令 执行命令来创建需要处理的输出 动态生成Python语句 导入Pytho ...

  6. 【C#】1.2 控制台应用程序学习要点

    分类:C#.VS2015 创建日期:2016-06-14 教材:十二五国家级规划教材<C#程序设计及应用教程>(第3版) 一.要点概述 <C#程序设计及应用教程>(第3版)的第 ...

  7. 记录一次Mac虚拟机安装的过程(有图有真相)

    这是我今天在公司用Vmware workstation虚拟机安装小狮子的全过程,记录一下没什么特别的用途,希望以后不要忘记,整个过程我总共花了半个多小时,挺快的.确实苹果的系统配上苹果的电脑就是牛叉, ...

  8. Interlocked.CompareExchange

    class SourceManager { private SourceManager() { } private static SourceManager sourceManager; public ...

  9. ahjesus js 快速求幂

    /* 快速幂计算,传统计算方式如果幂次是100就要循环100遍求值 快速幂计算只需要循环7次即可 求x的y次方 x^y可以做如下分解 把y转换为2进制,设第n位的值为i,计算第n位的权为x^(2^(n ...

  10. 写给java程序员的c++与java实现的一些重要细微差别

    0.其实常规的逻辑判断结构.工具类.文件读写.控制台读写这些的关系都不大,熟悉之后,这些都是灵活运用的问题. 学习c/c++需要预先知道的一个前提就是,虽然有ANSI C标准,但是每个c/c++编译器 ...