package com.pb.test;
/**
 * 测试MongoDB数据库中查询所花费的时间(ms)
 * @author zoe
 * date 2012-12-26
 */
import java.io.BufferedReader;
import java.io.File;

import java.io.FileReader;
import java.net.UnknownHostException;

import java.util.regex.Pattern;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;

public class MyMongoDB {
	/*
	 * get DBCollction
	 * @return
	 */
	public static DBCollection getcoll() {
		Mongo mongo;
		try {
			mongo = new Mongo("localhost", 27017);
			DB db = mongo.getDB("working");

			DBCollection coll = db.getCollection("mytest");
			return coll;
		} catch (UnknownHostException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}
	/*
	 * 该方法是把txt文件中的数据,逐行存入到MongoDB数据库中
	 * 且每行中的数据只放入了一个字段中,若果是一行中的数据要放入多个字段中的话,还没有验证
	 */
	public static void add() {
		String url = "d:/file.txt";
		try {
			FileReader read = new FileReader(new File(url));
			BufferedReader br = new BufferedReader(read);
			StringBuffer sbf = new StringBuffer("");
			String line = null;
			int i = 0;
			DBCollection coll = getcoll();
			while ((line = br.readLine()) != null) {
				coll.insert(new BasicDBObject().append("name", line).append(
						"no", i++));
			}
			System.out.println(coll.getCount());
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/*
	 * 无索引查询
	 */
	public static void query() {
		
		DBCollection coll=getcoll();
       
		BasicDBObject cond = new BasicDBObject();

		Pattern pattern = Pattern.compile("浙江.*$");
		long a = System.currentTimeMillis();
		cond.put("name", pattern);
		// cond.put("name","宁海中通电子科技有限公司" );
		DBCursor returns = coll.find(cond);
		int i = 0;
		while (returns.hasNext() && (++i < 25)) {
			System.out.println(returns.next());
		}
		long b = System.currentTimeMillis();
		System.out.println("所用时间 " + (b - a) + "毫秒");
}
	public static void main(String[] args) {
		query();
	}

	

}
最近下载更多
xsxtxbb  LV8 2021年3月10日
FXJ1106  LV3 2021年1月8日
李海生  LV1 2019年11月11日
故事_sun  LV26 2018年5月28日
dagf113225  LV68 2017年8月1日
34567  LV11 2015年5月18日
whatislife  LV13 2015年5月11日
小笨蛋  LV17 2015年4月15日
Ckxlnd  LV13 2015年3月23日
lmmdebbx  LV3 2014年6月19日
最近浏览更多
穿山甲1001  LV6 2023年12月14日
rain112  LV31 2022年12月19日
Super强  LV13 2022年10月21日
291373020  LV7 2022年5月31日
lingtiejing  LV15 2022年2月23日
1872615558  LV13 2021年11月2日
sunlzh888888  LV29 2021年6月24日
明明 2021年6月17日
暂无贡献等级
liuhao_  LV2 2021年6月7日
xsxtxbb  LV8 2021年3月9日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友