java连接MongoDB查询导出为excel表格
背景
因为项目需求。每一个星期须要统计每一个公众号7天的訪问数,月底就须要统计一个月的訪问数,40多个公众号。每次手动统计都须要花费1个小时,总之是一项无技术耗时耗神的手工活。
于是。想写个程序来统计。每次仅仅须要执行下代码,输入一些配置信息就导出为excel表格,直接复制完事,可是水平有限。就仅仅用java写了个。
demo下载
程序说明
- 依赖外部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表格的更多相关文章
- Java 连接MongoDB
1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...
- Python实现数据库一键导出为Excel表格
依赖 Python2711 xlwt MySQLdb 数据库相关 连接 获取字段信息 获取数据 Excel基础 workbook sheet 案例 封装 封装之后 测试结果 总结 数据库数据导出为ex ...
- MongoDB第三天(正则,管道,聚合,字符串,算术,日期,java连接MongoDB)
部分正则表达式: i:忽略大小写 m:多行查找 x:设置 x 选项后,正则表达式中的非转义的空白字符将被忽略. s:允许点字符(即.)匹配包括换行符在内的所有字符. w:匹配包括下划线的任何单词字 ...
- java连接mongodb数据库
最近毕设需要用到这个数据库.然而又不会,没办法,只能上网学习学习. 记录一下java连接mongodb数据库的简单方法.这里只是记录一下学习.熟悉一下CURD方法. 但是毕业用到的是SpringBoo ...
- 用Java导出为excel表格
导出的是最基础的excel表格,没有任何样式. <input type="button" value="输出到Excel" onclick='output ...
- Java将list数据导出到Excel——(八)
Java实体类 package bean; public class Question { private String timu; //题干 private String leixing; //类型 ...
- 使用PHPExcel实现数据批量导出为excel表格
首先需要下载PHPExecel类文件,帮助文档可以参考PHPExcel中文帮助手册|PHPExcel使用方法. 下面直接上例子,是我自己写的一个简单的批量导出数据为excel的例子 前台页面 比较简单 ...
- 使用Aspose插件将程序中的表格,导出生成excel表格
http://www.cnblogs.com/lanyue52011/p/3372452.html这个是原文地址 /// <summary> /// 点击按钮,将内存表导出excel表格! ...
- java连接mongodb的一个奇葩问题及奇葩解决方式
昨天在eclipse中编写代码,本来连接mongodb进行各项操作都是正常的,但是有一会儿突然之间就没法连接了,还一直抱错,错误如下: 信息: Cluster created with setting ...
随机推荐
- 多线程编程(二)--进程&&线程
看完上篇博文的介绍后,大家应该大概了解进程和线程的由来.有了这样一个背景我们进一步来看一下线程和进程. 引入进程: 进程能够提高系统的并发性.提高CPU的使用率,从而提高程序的性能.在曾经单道操作系统 ...
- 通过wireshark,以及python代码收发邮件,了解smtp协议,pop协议工作过程
40返回连接server成功 41.43发送ehlo命令查询server支持命令 返回250 44.46请求认证 server响应235认证成功 47.49发送mail命令发送者邮箱 返回250 ...
- DIV+CSS两种盒子模型(W3C盒子与IE盒子)
在辨析两种盒子模型之前.先简单说明一下什么叫盒子模型. 原理: 先说说我们在网页设计中常听的属性名:内容(content).填充(padding).边框(border).边界(margin), CSS ...
- GBX的Graph(最短路)
Problem B: Graph Time Limit: 2 Sec Memory Limit: 128 MB Submit: 1 Solved: 1 [cid=1000&pid=1&am ...
- Appium IOS 自己主动化測试初探
手机平台的自己主动化測试工具非常多,之前研究过了安卓和苹果的原生自己主动化測试框架.经一些同事介绍,貌似Appium是个不错的工具. 想记录一下研究的结果,也算是篇干货的文章 在网上也看了一些视频.个 ...
- 使用gnu automake编译helloworld
使用gnu automake编译helloworld 按照许多介绍automake基本步骤的教程中的说法,我在尝试使用automake编译helloworld示例程序的时候,仍然遇到了几个小坑,所幸后 ...
- stm32与arm7比较(经典)
http://wenku.baidu.com/link?url=LIVcT1AQL0IgVF1xan5Zy9rXarCBo66hj7OXSxM1ap7FpssO4c3sd1pZd8azfBPr3PBy ...
- 15.Node.js REPL(交互式解释器)
转自:http://www.runoob.com/nodejs/nodejs-tutorial.html Node.js REPL(Read Eval Print Loop:交互式解释器) 表示一个电 ...
- webservie授权调用
Dim usercode As String = System.Configuration.ConfigurationSettings.AppSettings("SAPWebServiceU ...
- 用Zebra打造Linux下小型路由器
用Zebra打造Linux下小型路由器 现在的Internet网络相当庞大,不可能在不同的网络之间建立直接的连接,所以这时就必须用路由器为不同网络之间的通信提供路径选择.Linux下搭建路由器价格非常 ...