wangyan188 发表于 2017-12-15 15:19:42

MongoDB增删改查实例

MongoDB之Java测试代码(DAO层),mongodbdao
  MongoInit.java是数据库初始化及连接类
  MongoUtils.java是对mongodb的各种操作方法
  MongoInit.java
package com.wlwcloud.datatest;import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.net.UnknownHostException; import java.util.Properties;import org.apache.log4j.Logger;import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.Mongo; import com.mongodb.MongoOptions; import com.mongodb.ServerAddress;/*** Mongo工具类:设计为单例模式,每当月份发生变化,数据库连接名称就会发生变化,这是业务规则 因MongoDB的Java驱动是线程安全的,对于一般的应用,只要一个Mongo实例即可,Mongo有个内置的连接池(池大小默认为10个)。* 对于有大量写和读的环境中,为了确保在一个Session中使用同一个DB时,我们可以用以下方式保证一致性: DB mdb =mongo.getDB('dbname'); mdb.requestStart(); // 业务代码 mdb.requestDone();* DB和DBCollection是绝对线程安全的* @author undoner*/ public>  MongoUtils.java
package com.wlwcloud.datatest;import java.net.UnknownHostException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Set; import java.util.regex.Pattern;import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.ketayao.ketacustom.entity.main.User; import com.ketayao.utils.SecurityUtils; import com.mongodb.AggregationOutput; import com.mongodb.BasicDBList; import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObjectBuilder; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.MapReduceCommand; import com.mongodb.MapReduceOutput; import com.mongodb.Mongo; import com.mongodb.MongoException; import com.mongodb.QueryBuilder; import com.mongodb.WriteConcern;public>  MongoDBConfig.properties
#端口设置 DBPort=27017 #URL DBUrl=localhost #URL DBName=wlwdb java代码解释逐行解释
  你用的应该是ibatis,这里是批量删除,相当于把一堆操作用一个事务来提交,提高数据库性能。
  //函数功能,删除list中的所有元素在数据库中的记录。
  protected void batchDelete(List<?> lst, String statement)
  throws SQLException
  {
  getSqlMapClient().startBatch();//开始批量操作
  //遍历list
  for (Iterator localIterator = lst.iterator(); localIterator.hasNext(); )
  {
  Object obj = localIterator.next();
  getSqlMapClient().delete(statement, obj);//statement表示你调用的删除方法,在xml文件中定义的。
  }
  getSqlMapClient().executeBatch();//结束批量操作
  }
页: [1]
查看完整版本: MongoDB增删改查实例