您的位置:首页 > 数据库 > Mongodb

分享java操作mongodb的crud代码

2014-03-14 10:50 381 查看
代码中包括了mongodb的crud及其分页查询,排序功能

下载地址:分享java操作mongodb的crud代码

package com.zuidaima.mongodb.test;

import java.net.UnknownHostException;

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.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoException;

public class Main {

	private Mongo mongo = null;
	private DB db = null;
	private DBCollection test;

	@Before
	public void init() {
		try {
			mongo = new Mongo("localhost");
			db = mongo.getDB("test");
			test = db.getCollection("test");
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (MongoException e) {
			e.printStackTrace();
		}
	}

	@Test
	public void create() {
		BasicDBObject data = new BasicDBObject().append("hosting", "hostA");
		data.put("name", "中文");
		data.put("name", "英文");
		test.save(data);
	}

	@Test
	public void load() {
		BasicDBObject query = new BasicDBObject();
		query.put("name", "中文");
		DBCursor cursor = test.find(query);
		while (cursor.hasNext()) {
			DBObject object = cursor.next();
			System.out.println(object);
		}
	}

	@Test
	public void page() {
		int count = 10;
		int page = 1;
		int skip = (page - 1) * count;
		DBCursor cursor = test.find().limit(count).skip(skip);
		while (cursor.hasNext()) {
			DBObject object = cursor.next();
			System.out.println(object);
		}
	}

	@Test
	public void sort() {
		int count = 10;
		int page = 1;
		int skip = (page - 1) * count;
		DBCursor cursor = test.find().limit(count).skip(skip)
				.sort(new BasicDBObject("_id", -1));
		while (cursor.hasNext()) {
			DBObject object = cursor.next();
			System.out.println(object);
		}
	}

	@Test
	public void update() {
		BasicDBObject query = new BasicDBObject();
		query.put("name", "中文");
		DBCursor cursor = test.find(query);
		DBObject object = cursor.next();

		BasicDBObject newObject = new BasicDBObject();
		newObject.put("name", "中文");
		newObject.put("value", "chinese");
		test.update(object, newObject);
		cursor = test.find();
		while (cursor.hasNext()) {
			System.out.println(cursor.next());
		}
	}

	@Test
	public void delete() {
		BasicDBObject query = new BasicDBObject();
		query.put("name", "中文");
		DBCursor cursor = test.find(query);
		DBObject object = cursor.next();
		test.remove(object);

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

	@After
	public void destory() {
		if (mongo != null)
			mongo.close();
		mongo = null;
		db = null;
	}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: