分享java操作mongodb的crud代码

3 篇文章 0 订阅
1 篇文章 0 订阅

代码中包括了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;
	}

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值