设为首页 加入收藏

TOP

MongDB基础学习(七)――【MongoDBforJava】Java操作MongoDB(一)
2015-07-24 11:12:28 来源: 作者: 【 】 浏览:11
Tags:MongDB 基础 学习 MongoDBforJava Java 操作 MongoDB

?

开发的产品为了融资,不停得改版,从第一版到现在最新版本,最后发现公司发展方向都变了,有最初电子商务改成VR内容提供者(没办法,要别人钱,就得按照别人的规划的战略走)。本来本章节会放到后面再做讲解,无奈,部门需要做一次培训任务,我就想到拿Java操作MongoDB作为培训内容,开发环境和依赖jar如下:

(1)开发环境:

System:Windows

IDE:eclipse

Database:mongoDB2.6

Maven:apache-maven-3.0.4

(2)开发依赖库:

JavaEE7、mongo-2.6.5.jar、junit-4.11.jar

一、准备工作

1、 首先,下载mongoDB对Java支持的驱动包(我是直接拿maven下载的,文章最后我也会把相应的mongo-2.6.5.jar上传。

MongoDBfor Java的API文档地址为:http://api.mongodb.org/java/2.6.5/

MongoDB for Java相关的操作实例代码:http://docs.mongodb.org/ecosystem/tutorial/getting-started-with-java-driver/

我这里创建的是Maven工程,其pom文件内容如下:

?


	4.0.0
	com.hth
	mongodb
	war
	0.0.1-SNAPSHOT
	mongodb Maven Webapp
	http://maven.apache.org
	
		
			junit
			junit
			4.11
			test
		

		
			org.mongodb
			mongo-java-driver
			2.6.5
		
	
	
		mongodb
	

?

如果你的开发环境没有安装maven环境,你可以建立一个JavaProject工程,导入MongoDB的驱动jar包,即可在Java中使用mongoDB,

?

二、Java操作MongoDB示例

在本示例之前你需要启动mongoDB的服务,启动后,下面的程序才能顺利执行;

1、 建立MongoDBDemo.java,完成简单的mongoDB数据库操作

Mongomongo = new Mongo();

这样就创建了一个MongoDB的数据库连接对象,它默认连接到当前机器的localhost地址,端口是27017。

DB db = mongo.getDB(“test”);

这样就获得了一个test的数据库(为mongoDB的默认的数据库),如果mongoDB中没有创建这个数据库也是可以正常运行的。得到了db,下一步我们要获取一个“聚集集合DBCollection”,通过db对象的getCollection方法来完成。

DBCollection users = db.getCollection("users");

这样就获得了一个DBCollection,它相当于我们数据库的“表”,在MongoDB中叫做集合。

查询所有数据

DBCursor cur = users.find();

while (cur.hasNext()) {

System.out.println(cur.next());

}

完整源码

?

package com.hth.mongodb;

import java.net.UnknownHostException;
import java.util.Iterator;

import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
import com.mongodb.util.JSON;

/**
 * @ClassName: MongoDBDemo
 * @Description: TODO(MongoDB测试)
 * @author wangzhao date 2015年2月11日 下午3:56:16
 * 
 */
public class MongoDBDemo {

	public static void main(String[] args) throws UnknownHostException,
			MongoException {

		Mongo mongo = new Mongo("192.168.26.190", 27017);
		for (String dbName : mongo.getDatabaseNames()) {
			System.out.println("数据库实例:" + dbName);
		}
		DB db = mongo.getDB("dreamerkr");
		for (String cName : db.getCollectionNames()) {
			System.out.println("dreamerkr存在的集合:" + cName);
		}
		DBCollection webInfo = db.getCollection("web_info");
		DBCursor dbCursor = webInfo.find();
		while (dbCursor.hasNext()) {
			System.out.println("每个文档数据为:" + dbCursor.next());
		}

		for (Iterator it = dbCursor.iterator(); it.hasNext();) {
			System.out.println("每个文档数据为:" + it.next());
		}

		System.out.println("文档个数为:" + dbCursor.count());

		System.out.println("序列化此文档"+JSON.serialize(dbCursor));

	}

}

?

2、 完成CRUD操作,首先建立一个MongoDBCRUDTest.java,基本测试代码如下:

?

package com.hth.mongodb;

import java.net.UnknownHostException;

import java.util.ArrayList;

import java.util.List;

import org.bson.types.ObjectId;

import org.junit.After;

import org.junit.Before;

import org.junit.Test;

import com.mongodb.BasicDBObject;

import com.mongodb.DB;

import com.mongodb.DBCollection;

import com.mongodb.DBCursor;

import com.mongodb.DB
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇浅谈触发器和存储过程 下一篇机房收费系统―《存储过程》

评论

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

·数据库:推荐几款 Re (2025-12-25 12:17:11)
·如何最简单、通俗地 (2025-12-25 12:17:09)
·什么是Redis?为什么 (2025-12-25 12:17:06)
·对于一个想入坑Linux (2025-12-25 11:49:07)
·Linux 怎么读? (2025-12-25 11:49:04)