参考http://www.cnblogs.com/varlxj/archive/2010/03/12/1684181.html
首先下载我们MongoDb数据库和jar包
命令控制台中启动数据库
bin\mongod.exe -dbpath data
在我们的项目中导入jar包,测试类
import java.net.UnknownHostException;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
public class Client {
protected static void showData(DBCursor ite) {
System.out
.println("..................................................................");
while (ite.hasNext()) {
System.out.println(ite.next());
}
}
public static void main(String args[]) {
try {
// 默认端口是27017,可以省略端口
Mongo m = new Mongo("127.0.0.1:27017");
// 选择数据库,如果没有这个数据库的话,会自动建立
DB db = m.getDB("mongo");
// 列出所有数据库名,不过发现,如果数据库里面是没有数据的话,并不会被列出来
System.out.println("数据库列表 :" + m.getDatabaseNames());
// 建立一个集合,和数据库一样,如果没有,会自动建立
DBCollection col = db.getCollection("col");
// 列出所有集合名,和数据库一样,如果集合里面是没有数据的话,并不会被列出来
System.out.println(db.getCollectionNames());
// 建立一个数据项,重复执行会多次添加一样的数据
BasicDBObject val = new BasicDBObject();
val.put("name", "凤姐");
col.save(val);
// 保存的数据为 { "_id" : "4b8de2f3053068a371e870c0" , "name" : "凤姐"}
// _id是系统自动帮加上的,全局唯一
// 多次加入一样的数据时,_id都是不一样的
// 取得所有数据并打印出来
DBCursor ite = col.find();
showData(ite);
// 查找所有 name=凤姐 的项,并更新
BasicDBObject old_val = new BasicDBObject(), new_val = new BasicDBObject();
old_val.put("name", "凤姐456");
new_val.put("name", "凤姐999");
col.update(old_val, new_val);// 只会更新一个
//col.updateMulti(new_val, old_val);// 不知道怎么回事,这函数不顶用
ite = col.find();
showData(ite);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MongoException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}