Java 对芒果数据库 MongoDB的增删改查入门例子

摘要: 昨天看了 芒果数据库 开胃菜,如果是使用过传统关系数据,而且对javascript json 比较熟悉的人,理解起来非常容易。所以单纯MongoDB的入门来说,还是非常简单的,今天继续测试用java 实现增删改查,java下的驱动包已经非常成熟,而且已经在大量的生产环境中得到检验。

昨天看了 芒果数据库 开胃菜,如果是使用过传统关系数据,而且对javascript json 比较熟悉的人,理解起来非常容易。所以单纯MongoDB的入门来说,还是非常简单的,今天继续测试用java 实现增删改查,java下的驱动包已经非常成熟,而且已经在大量的生产环境中得到检验。

首先下载 java mongodb 驱动包
下载的地址: github: 这里下载: MongoDB Java Driver jar file download

创建 java 工程进行测试

package com.yihaomen.mongodb.crud;

import java.net.UnknownHostException;
import java.util.Date;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;
import com.mongodb.MongoException;

public class App {
	public static void main(String[] args) {

		try {
			/**** Connect to MongoDB ****/
			// Since 2.10.0, uses MongoClient
			MongoClient mongo = new MongoClient("localhost", 27017);

			/**** Get database ****/
			// if database doesn't exists, MongoDB will create it for you
			DB db = mongo.getDB("yihaomen");

			/**** Get collection / table from 'yihaomen' ****/
			// if collection doesn't exists, MongoDB will create it for you
			DBCollection table = db.getCollection("crudCollection");

			/**** Insert ****/
			// create a document to store key and value
			BasicDBObject document = new BasicDBObject();
			document.put("name", "yihaomen");
			document.put("age", 30);
			document.put("createdDate", new Date());
			table.insert(document);

			/**** Find and display ****/
			BasicDBObject searchQuery = new BasicDBObject();
			searchQuery.put("name", "yihaomen");

			DBCursor cursor = table.find(searchQuery);

			while (cursor.hasNext()) {
				System.out.println(cursor.next());
			}

			/**** Update ****/
			// search document where name="yihaomen" and update it with new values
			BasicDBObject query = new BasicDBObject();
			query.put("name", "yihaomen");

			BasicDBObject newDocument = new BasicDBObject();
			newDocument.put("name", "yihaomen-updated");

			BasicDBObject updateObj = new BasicDBObject();
			updateObj.put("$set", newDocument);

			table.update(query, updateObj);

			/**** Find and display ****/
			BasicDBObject searchQuery2 
				= new BasicDBObject().append("name", "yihaomen-updated");

			DBCursor cursor2 = table.find(searchQuery2);

			while (cursor2.hasNext()) {
				System.out.println(cursor2.next());
			}
			
			/**** Remove test ****/
			//BasicDBObject delDocument = new BasicDBObject();
			//newDocument.put("name", "yihaomen-updated");
			//table.remove(delDocument);

			/**** Done ****/
			System.out.println("Done");

		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (MongoException e) {
			e.printStackTrace();
		}

	}
}



这个例子实现了简单的增删改查。在代码中,将删除的代码注释掉了,是为了在MongoDB的 shell 中检查是否正常。

先启动 mongodb 服务
mongod --config D:\MongoDB2.6\mongo.config

然后,在你另一个控制台中,开启 MongoDB shell 进行测试,检查数据是否插入而且是更新了的数据:


看到所插入的数据了吧,说明能正常工作了,当然这只是个很小的测试程序。后面有时间详细测试 MongoDB.
测试代码下载:
java MongoDB crud sample

上一篇: 给同事做的Spring data JPA培训的教程及例子
下一篇: 在Windows 下安装配置 MongoDB
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章或者资源来源于互联网, 有时候很难判断是否侵权, 若有侵权, 请联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布无版权争议的 文章/资源.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号