您好,欢迎访问一九零五行业门户网

MongoDB学习(二)MongoDB Java增删查改

相关资料 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();
  }
}
运行效果:
示例下载
其它类似信息

推荐信息