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();
}
}
}
Mongodb之JavaApi调用例子
最新推荐文章于 2023-08-23 18:19:46 发布