相关资料 1、mongodb for java的驱动包 https://github.com/mongodb/mongo-java-driver/downloads 2、在线文档 http://www.mongodb.org/display/docs/java+language+center 操作 1、查询某张表(在mongodb中称之为集合)的所有数据 java代码dbtest.java pack
相关资料
1、mongodb for java的驱动包
https://github.com/mongodb/mongo-java-driver/downloads
2、在线文档
http://www.mongodb.org/display/docs/java+language+center
操作
1、查询某张表(在mongodb中称之为集合)的所有数据
java代码dbtest.java
package com.archie.mongodb;
import java.net.unknownhostexception;
import com.mongodb.db;
import com.mongodb.dbcollection;
import com.mongodb.dbcursor;
import com.mongodb.dbobject;
import com.mongodb.mongo;
import com.mongodb.mongoexception;
/**
* 查询指定数据库指定dbcollection集合中的所有数据
* @author archie2010
*
* since 2012-9-29 下午10:40:21
*/
public class dbtest {
public static void main(string[] args) throws unknownhostexception,
mongoexception {
/**
mongo实例代表了一个数据库连接池
* mongo mg = new mongo(localhost);
mongo mg = new mongo(localhost, 27017);
*/
mongo mg = new mongo();
// 获取名为“dbtest”的数据库对象
db db = mg.getdb(dbtest);
// 查询该库中所有的集合 (相当于表)
for (string name : db.getcollectionnames()) {
system.out.println(collection name: + name);
}
dbcollection users = db.getcollection(emp);
// 查询集合中所有的数据
dbcursor cur = users.find();
system.out.println(record count: + cur.count());
while (cur.hasnext()) {
dbobject object = cur.next();
system.out.println(object);
// 取出对象中列表为字段名为'uname'和'upwd'的数据
system.out.println(uname: + object.get(uname) + \tupwd:
+ object.get(upwd));
}
}
}
运行结果:
2、对指定dbcollection集合的crud操作
java代码
dbutil.java
package com.archie.mongodb;
import java.net.unknownhostexception;
import com.mongodb.db;
import com.mongodb.dbcollection;
import com.mongodb.mongo;
/**
* 获得dbcollection集合的工具类
* @author archie2010
*
* since 2012-9-29 下午10:54:42
*/
public class dbutil {
public static mongo mg=null;
public static db db=null;
public static dbcollection collection;
/**
* 获得dbcollection对象
* @param dbname
* @param colname
* @return
*/
public static dbcollection getdbcollection(string dbname,string colname){
if(mg==null){
try {
mg=new mongo();
} catch (unknownhostexception e) {
e.printstacktrace();
}
}
if(db==null){
db=mg.getdb(dbname);
}
return db.getcollection(colname);
}
}
crudtest.java
package com.archie.mongodb;
import com.mongodb.basicdbobject;
import com.mongodb.dbcollection;
import com.mongodb.dbcursor;
import com.mongodb.dbobject;
/**
* 对指定dbcollection集合的crud操作
* @author archie2010
*
* since 2012-9-29 下午10:51:24
*/
public class crudtest {
/**
* 增加
* @param obj
*/
public static void add(dbobject obj){
dbcollection coll=dbutil.getdbcollection(dbtest, emp);
coll.insert(obj);
}
/**
* 删除
* @param obj
*/
public static void delete(dbobject obj){
dbcollection coll=dbutil.getdbcollection(dbtest, emp);
coll.remove(obj);
}
/**
* 查询
*/
public static void query(){
dbcollection coll=dbutil.getdbcollection(dbtest, emp);
// 查询集合中所有的数据
dbcursor cur = coll.find();
system.out.println(record count: + cur.count());
while (cur.hasnext()) {
dbobject object = cur.next();
system.out.println(object);
// 取出对象中列表为'uname'和'upwd'的数据
system.out.println(uname: + object.get(uname) + \tupwd:
+ object.get(upwd)+\t_id:+object.get(_id));
}
}
/**
* 修改
*/
public static void modify(dbobject orig,dbobject update){
dbcollection coll=dbutil.getdbcollection(dbtest, emp);
coll.update(orig, update, true, false);
}
public static void main(string[] args) {
dbobject empobj=new basicdbobject();
empobj.put(uname, teddy);
empobj.put(upwd, 123456);
//添加
add(empobj);
query();
dbobject updateobj=new basicdbobject();
updateobj.put(uname, teddy);
updateobj.put(upwd, 3333);
//更新
modify(new basicdbobject(uname,teddy),updateobj);
system.out.println(-----------------------修改后-------------------);
query();
//删除
delete(new basicdbobject(uname,teddy));
system.out.println(-----------------------删除后-------------------);
query();
}
}
运行效果:
示例下载