背景

因为项目需求。每一个星期须要统计每一个公众号7天的訪问数,月底就须要统计一个月的訪问数,40多个公众号。每次手动统计都须要花费1个小时,总之是一项无技术耗时耗神的手工活。

于是。想写个程序来统计。每次仅仅须要执行下代码,输入一些配置信息就导出为excel表格,直接复制完事,可是水平有限。就仅仅用java写了个。


demo下载

下载地址:http://download.csdn.net/detail/musuny/8769499


程序说明

  • 依赖外部jar包

    • fastjson-1.1.36.jar:阿里巴巴自主研发的json工具,性能好,本文主要用于数据的存取
    • mongo-java-driver-2.13.2.jar:java 连接mongo驱动包,此包为关键包不可或缺
    • poi-3.12.jar:用于创建Excel表格的jar包
  • PublicVisit类:主要实现统计功能的类
    • init(ip,port,db,collection):初始化连接mongo的ip地址、端口号、数据库、查询集合
    • destroy():在程序执行完毕执行该函数,关闭数据库的连接、垃圾回收等
    • readIdsFromFile(filePath):从指定路径下的文件读取公众号id

      公众号id内容演示样例:

    • getAll(filePath,startTime,endTime):參数分别代表公众号id所在的文件路径、统计数据的開始时间和截止时间,时间格式为字符串的yyyyMMdd
    • exportAsExcel(array,exportPath):參数分别代表JSONArray类型的统计结果、导出excel的表格路径
    • main():程序入口
  • VisitDetail类:訪问数据类,包含公众号id属性以及JSONArray訪问统计集合属性

步骤

第一步:执行程序

demo我已经build成一个jar包。执行方式也特别简单,在jar所在路径按住shift+鼠标右键然后点击“在此处打开命令行窗体”,输入命令:java -jar MongoDB-Demo.jar 。就可以执行程序。

第二步:依据提示输入配置參数

依照程序执行提示信息输入相关配置信息,详细的须要输入自己的參数,执行截图:

第三步:打开保存的excel表格

打开保存在E:/visit.xls表格。查看统计到的数据,比較理想,达到了想要的统计结果。结束了痛苦的手工统计。看看这个表格吧,能够想象手工统计1000+个数据是多么的无聊。截图:


总结

最终结束了痛苦的人工统计,O(∩_∩)O哈哈~,假设须要程序源代码,请联系我!


关于我

  • Q Q:1250052380
  • 邮箱:1250052380@qq.com

java连接MongoDB查询导出为excel表格的更多相关文章

  1. Java 连接MongoDB

    1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...

  2. Python实现数据库一键导出为Excel表格

    依赖 Python2711 xlwt MySQLdb 数据库相关 连接 获取字段信息 获取数据 Excel基础 workbook sheet 案例 封装 封装之后 测试结果 总结 数据库数据导出为ex ...

  3. MongoDB第三天(正则,管道,聚合,字符串,算术,日期,java连接MongoDB)

    部分正则表达式: i:忽略大小写 m:多行查找 x:设置 x 选项后,正则表达式中的非转义的空白字符将被忽略.   s:允许点字符(即.)匹配包括换行符在内的所有字符. w:匹配包括下划线的任何单词字 ...

  4. java连接mongodb数据库

    最近毕设需要用到这个数据库.然而又不会,没办法,只能上网学习学习. 记录一下java连接mongodb数据库的简单方法.这里只是记录一下学习.熟悉一下CURD方法. 但是毕业用到的是SpringBoo ...

  5. 用Java导出为excel表格

    导出的是最基础的excel表格,没有任何样式. <input type="button" value="输出到Excel" onclick='output ...

  6. Java将list数据导出到Excel——(八)

    Java实体类 package bean; public class Question { private String timu; //题干 private String leixing; //类型 ...

  7. 使用PHPExcel实现数据批量导出为excel表格

    首先需要下载PHPExecel类文件,帮助文档可以参考PHPExcel中文帮助手册|PHPExcel使用方法. 下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子 前台页面 比较简单 ...

  8. 使用Aspose插件将程序中的表格,导出生成excel表格

    http://www.cnblogs.com/lanyue52011/p/3372452.html这个是原文地址 /// <summary> /// 点击按钮,将内存表导出excel表格! ...

  9. java连接mongodb的一个奇葩问题及奇葩解决方式

    昨天在eclipse中编写代码,本来连接mongodb进行各项操作都是正常的,但是有一会儿突然之间就没法连接了,还一直抱错,错误如下: 信息: Cluster created with setting ...

随机推荐

  1. python RESTful API框架:Eve 高速入门

    Eve是一款Python的REST API框架.用于公布高可定制的.全功能的RESTful的Web服务.帮你轻松创建和部署API,本文翻译自Eve官方站点: http://python-eve.org ...

  2. visibility-控件的显示跟隐藏设置

    在Android开发中,大部分控件都有visibility这个属性,其属性有3个 visible:可见 invisible:不可见,但是会占据原来的位置 gone:不可见,也不会占据原来的位置 可见( ...

  3. checkbox-padding 调整checkbox字体跟图标距离

    有时候我们会遇到需要调整控件中的内容相对于容器的位置.这里有两种情况 1.linearlayout这样的容器中,包含button类的控件,这时候margin可以调节 2.textview中的文字内容 ...

  4. 洛谷P3391 【模板】文艺平衡树(Splay)(FHQ Treap)

    题目背景 这是一道经典的Splay模板题——文艺平衡树. 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1, ...

  5. 新手前端笔记之--css盒子

    css盒子就是它的盒模型,所有css的布局都是以此作为基础的,很有必要来详细记录一下. 1.盒子的尺寸就是margin+padding+border+content的总和,这很好理解,但令人迷惑的可能 ...

  6. 【MapReduce】经常使用计算模型具体解释

    前一阵子參加炼数成金的MapReduce培训,培训中的作业样例比較有代表性,用于解释问题再好只是了. 有一本国外的有关MR的教材,比較有用.点此下载. 一.MapReduce应用场景 MR能解决什么问 ...

  7. Kurento应用开发指南(以Kurento 5.0为模板) 之中的一个:简单介绍,安装与卸载

    文件夹 1. Kurento是什么               3 2. Kurento简单介绍                       3 2.1 WebRTC媒体server         ...

  8. activity-栈相关属性

    1.启动任务栈 第一种,动作设置为“android.intent.action.MAIN”,类别设置为“android.intent.category.LAUNCHER”,可以使这个ACT(activ ...

  9. Iptables-主机防火墙设置

    基于Iptables构建主机防火墙 Iptables优点: 数据包过滤机制,它会对数据包包头数据进行分析. 1.1.1 加载相关薄块到内核 [root@centos7 ~]# lsmod | egre ...

  10. 51Nod——N1118 机器人走方格

    https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1118 基准时间限制:1 秒 空间限制:131072 KB 分值: 0  ...