1.接下来创建一个JavaProject工程,导入下载好的驱动包。可以在Java中使用mongoDB,目录如下:2.Java运行MongoDB实例在本实例之前,需要先启动mongod.exe服务。启动后,可以顺利执行以下程序;1、创建SimpleTest.java,完成简单的MongoDB数据库操作mongomongo=newMongo();这里创建了一个MongoDB数据库连接对象,默认连接到当前机器的localhost地址,端口为27017。DBdb=mongo.getDB("test");这样就得到了一个测试数据库。如果这个数据库不是在mongoDB中创建的,也可以正常运行。如果你知道,mongoDB可以在不创建这个数据库的情况下完成数据的添加操作。添加时,如果没有这个库,mongoDB会自动创建当前数据库。拿到db之后,接下来就是得到一个“聚合集合DBCollection”,这是通过db对象的getCollection方法完成的。DBCollection用户=db.getCollection("用户");这样就得到了一个DBCollection,相当于我们数据库的“表”。查询所有数据DBCursorcur=users.find();while(cur.hasNext()){undefinedSystem.out.println(cur.next());}完整源码包com.hoo.test;importjava.net.UnknownHostException;importcom.mongodb.DB;importcom.mongodb.DBCollection;导入com.mongodb.DBCursor;导入com.mongodb.Mongo;导入com.mongodb.MongoException;导入com.mongodb.util.JSON;/**函数:MongoDB简单示例@authorhoojo@createDate2011-5-2402:42:29PM@fileSimpleTest.java@packagecom.hoo.test@projectMongoDB@bloghttp://blog.csdn.net/IBM_hoojo@emailhoojo_@126.com@version1.0*/publicclassSimpleTest{publicstaticvoidmain(String[]args)throwsUnknownHostException,MongoException{Mongomg=newMongo();//查询所有数据库for(Stringname:mg.getDatabaseNames()){System.out.println("dbName:"+name);}DBdb=mg.getDB("测试");//查询所有集合for(Stringname:db.getCollectionNames()){System.out.println("collectionName:"+name);}DBCollection用户=db.getCollection("用户");//查询所有数据DBCursorcur=users.find();while(cur.hasNext()){System.out.println(cur.next());}System.out.println(cur.count());System.out.println(cur.getCursorId());System.out.println(JSON.serialize(cur));}}2.完成CRUD操作,首先创建一个MongoDB4CRUDTest.java,基本测试代码如下:packagecom.hoo.test;importjava.net.UnknownHostException;导入java.util.ArrayList;导入java.util.List;导入org.bson.types.ObjectId;导入org.junit.After;导入org.junit.Before;导入org.junit.Test;导入com。mongodb.BasicDBObject;导入com.mongodb.Bytes;导入com.mongodb.DB;导入com.mongodb.DBCollection;导入com。mongodb.DBCursor;importcom.mongodb.DBObject;importcom.mongodb.Mongo;importcom.mongodb.MongoException;importcom.mongodb.QueryOperators;importcom.mongodb.util.JSON;/**功能:实现MongoDB的CRUD操作@authorhoojo@createDate2011-6-203:21:23PM@fileMongoDB4CRUDTest.java@packagecom.hoo.test@projectMongoDB@bloghttp://blog.csdn.net/IBM_hoojo@emailhoojo_@126.com@version1.0*/publicclassMongoDB4CRUDTest{privateMongomg=null;privateDBdb;privateDBCollectionusers;@Beforepublicvoidinit(){try{mg=newMongo();//mg=newMongo("localhost",27017);}catch(UnknownHostExceptione){e.printStackTrace();}catch(MongoExceptione){e.printStackTrace();}//获取临时数据库;如果默认不创建,mongodb会自动创建db=mg.getDB("temp");//获取用户DBCollection;如果默认不创建,mongodb会自动创建users=db.getCollection("users");}@Afterpublicvoiddestroy(){if(mg!=null)mg.close();毫克=空;分贝=空;用户=空;System.gc();}publicvoidprint(Objecto){System.out.println(o);}}3.添加操作在添加操作之前,我们需要写一个查询方法来查询所有的数据代码如下:/**函数:查询所有数据@authorhoojo@createDate2011-6-203:22:40pm*/privatevoidqueryAll(){print("查询用户所有数据:");//dbCursorDBCursorcur=users.find();while(cur.hasNext()){print(cur.next());}}@Testpublicvoidadd(){//先查询所有数据queryAll();print("count:"+users.count());DBObjectuser=newBasicDBObject();user.put("name","hoojo");user.put("age",24);//用户。save(user)保存,getN()获取受影响的行数//print(users.save(user).getN());//扩展字段,随意添加字段,不影响已有数据user.put("sex","male");print(users.save(user).getN());//添加多条数据,传Array对象print(users.insert(user,newBasicDBObject("name","tom")).getN());//添加List集合List
