Mongodb之JavaApi调用例子

package cn.ac.iie;

import java.net.UnknownHostException;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.Map;



import org.bson.types.ObjectId;

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.WriteResult;

public class MongoDB1 {

	
	@SuppressWarnings("deprecation")
	public static void main(String[] args) throws ParseException, InterruptedException {
		
        Mongo mongodb;
		try {
			
			 mongodb = new Mongo("192.168.100.103", 10111); 
			 
			 DB db = mongodb.getDB("MyTestDB");  	
			 		 
			 DBCollection myCollection = db.getCollection("MyCollection");
			
			 for(int i =0;i <10;i++){
				 
				 DBObject myData= new BasicDBObject();
				 myData.put("_id","1");
				 myData.put("username","xuguokun");
				 myData.put("age","24");  
		         
		         
		         DateFormat insertFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		         Date date = null;
		         date = insertFormat.parse(insertFormat.format(new Date()));
		               
		         myData.put("time",date.getTime()+"");
		         		         
		         java.util.Date date1 = new Date(date.getTime());
		         String sDateTime1 = insertFormat.format(date1); 
		         System.out.println("Insert before:"+sDateTime1);
		         		         
		    	 //向数据库中插入数据
		         myCollection.insert(myData); 
		         
			 }   
        
			 //Mongodb查询1,全表检索,没有查询条件
	         DBCursor cur = myCollection.find();
	         
	         while(cur.hasNext()){
	            	
	            DBObject dbObject = cur.next();
	            
	            Map map = dbObject.toMap();
	            
	            System.out.println(map.size());
	            
	            Iterator entries = map.entrySet().iterator();

	            while (entries.hasNext()) {

	                Map.Entry entry = (Map.Entry) entries.next();

	                String key = (String)entry.getKey();

	                String value = (String)entry.getValue();

	                //System.out.println("Key = " + key + ", Value = " + value);
	                
	                if(key.equals("time")){
	            	   
	                	long time = Long.parseLong(value);
	                	SimpleDateFormat selectFormat= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	                	java.util.Date dt = new Date(time);  
	                	String sDateTime = selectFormat.format(dt);  //得到精确到秒的表示:08/31/2006 21:08:00
	                	System.out.println("Insert After:"+sDateTime);
	                }
	            }
	         }
	         
	         //Mongodb查询2,根据ObjectId进行检索
	         DBObject dbObject1 = myCollection.findOne(new ObjectId("5608fe2f4cd5756a99003fa4"));
	         if(dbObject1!=null){
		      
	        	 System.out.println("Mongodb查询2,根据ObjectId进行检索:"+dbObject1.toString());
	         }
	         
	         //Mongodb查询2
	         DBObject dbObject2 = new BasicDBObject();
	         dbObject2.put("_id", "1");
	         if(myCollection.findOne(dbObject2)!=null){
	        	
	        	 System.out.println("Mongodb查询2:"+myCollection.findOne(dbObject2).toString());
	         }
	       
	         

	         //Mongodb查询3
	         DBObject dbObject3 = new BasicDBObject();
	         dbObject3.put("_id", "1");
	         dbObject3.put("username", "xuguokun");
	         if(myCollection.findOne(dbObject3)!=null){
	        	 
	        	 System.out.println("Mongodb查询3:"+myCollection.findOne(dbObject3).toString());
	         }
	       
	         
	         //Mongodb删除1
	         DBObject delObject1 = new BasicDBObject();
	         delObject1.put("_id", "1");
	         delObject1.put("username", "xuguokun");
	         WriteResult  delWriteResult = myCollection.remove(delObject1);
	        
	         
	        
		} catch (UnknownHostException e) {
		
			e.printStackTrace();
		}       
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值