package com.huasheng.sitelog; import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * 配置类 * @author Administrator * */ public class Config { } static{ } try { Properties p=new Properties(); InputStream p.load(input); host=p.getProperty(\); port=Integer.parseInt( p.getProperty(\)); input.close(); e.printStackTrace(); input=Config.class.getResourceAsStream(\); } catch (IOException e) { }//加载 private static String host;//主机地址 private static int port;//端口 public static String getHost() { } public static int getPort() { } return port; return host; (4)创建管理类 package com.huasheng.sitelog; import com.mongodb.MongoClient; import com.mongodb.MongoClientOptions; import com.mongodb.MongoClientOptions.Builder; import com.mongodb.ServerAddress; import com.mongodb.WriteConcern; import com.mongodb.client.MongoDatabase;
/** * Mongo数据库连接管理类 * @author Administrator * */ public class MongoManager { 出 } } public static MongoDatabase getDatabase(){ } if(mongoClient==null){ } init(); //得到选项封装 MongoClientOptions options = builder.build(); mongoClient=new MongoClient(new ServerAddress(Config.getHost(), //初始化 private static void init(){ //创建一个选项构造器 Builder builder = new MongoClientOptions.Builder(); builder.connectTimeout(5000);//设置连接超时时间 builder.socketTimeout(5000);//读取数据的超时时间 builder.connectionsPerHost(30);//设置每个地址最大连接数 builder.writeConcern(WriteConcern.NORMAL);//设置写入策略 ,只有网络异常才会抛 private static MongoClient mongoClient=null; Config.getPort()),options); return mongoClient.getDatabase(\); (5)日志工具类 package com.huasheng.sitelog; import java.util.Map; import org.bson.Document; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; /** * 站点日志数据工具类
* @author Administrator * */ public class SiteLogUtil { } /** * 写入日志 * @param logname 日志名称 * @param map 日志数据 */ public static void save(String logname,Map
7.4.1条件查询
(1)在SiteLogUtil类中添加方法
/** * 按条件查询 * @param logName * @param map * @return */ public static FindIterable
} MongoDatabase database = MongoManager.getDatabase(); MongoCollection
(2)编写测试代码
Map
(1)在SiteLogUtil类中添加方法
/** * 分页查询日志 * @param logName 日志名称 * @param map 条件 * @param pageIndex 页码 * @param pageSize 页大小 * @return */ public static Map
for(int i=0;i<1000;i++){
} Map
Map
使用Maven 的package命令进行打包。
创建WEB工程,引入jar包,调用此方法即可实现日志查询。代码略。
MongoDB实操指南 - 图文
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)