背景

因为项目需求。每一个星期须要统计每一个公众号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. 源代码看CoordinatorLayout.Behavior原理

    在上一篇博客CoordinatorLayout高级使用方法-自己定义Behavior中,我们介绍了怎样去自己定义一个CoordinatorLayout的Behavior.通过文章也能够看出Behavi ...

  2. android.graphics.Paint方法setXfermode (Xfermode x...

    mPaint = new Paint(); mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SCREEN)); 常见的Xfermod ...

  3. BZOJ2754: [SCOI2012]喵星球上的点名(AC自动机/后缀自动机)

    Description a180285幸运地被选做了地球到喵星球的留学生.他发现喵星人在上课前的点名现象非常有趣.   假设课堂上有N个喵星人,每个喵星人的名字由姓和名构成.喵星球上的老师会选择M个串 ...

  4. Direct2D开发:MFC下从资源文件中加载位图

    转载请注明出处:http://www.cnblogs.com/ye-ming 0X01 概述: 相对于GDI处理界面,Direct2D有得天独厚的优势,下图就是Direct2D与GDI的效果对比,wi ...

  5. MySQL和SqlServer的区别

    一.查看表结构数量等mysql语句: -- 查看系统内所有数据库 show databases: -- 查询数据库内所有表 show tables; -- 显示表结构 desc 表名; sql ser ...

  6. Mrakdonw学习

    转载请注明出处:http://blog.csdn.net/cym492224103 什么是Mrakdown 为什么使用Mrakdown 怎样Mrakdown 字体 删除线 字体大小 引用 代码行代码块 ...

  7. ASP.NET MVC 入门4、Controller与Action

    原帖地址:http://www.cnblogs.com/QLeelulu/archive/2008/10/04/1303672.html Controller是MVC中比較重要的一部分.差点儿全部的业 ...

  8. Android实践 -- 监听应用程序的安装、卸载

    监听应用程序的安装.卸载 在AndroidManifest.xml中注册一个静态广播,监听安装的广播 android.intent.action.PACKAGE_ADDED 监听程序卸载的广播 and ...

  9. amazeui-datatables(登录注册界面用到)

    amazeui-datatables(登录注册界面用到) 一.总结 amazeui-datatables:DataTables 插件 Amaze UI 集成,只修改了样式和默认显示语言,其他参数同官方 ...

  10. C++的模板template

    模板是C++支持参数化多态的工具,使用模板可以使用户为类或者函数声明一种一般模式,使得类中的某些数据成员或者成员函数的参数.返回值取得任意类型. 模板是一种对类型进行参数化的工具: 因此,使用模板的目 ...