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 ...
随机推荐
- [React] Use the URL as the source of truth in React
In Single Page Apps we're used to fetch the data on event callbacks. That disables the capacity to u ...
- C#截取指定长度中英文字符串方法 (修改)
public static string GetFirstString(string stringToSub, int length) { Regex regex = new Regex(" ...
- 《三》Java IO 字节输入输出流
那么这篇博客我们讲的是字节输入输出流:InputStream.OutputSteam(下图红色长方形框内),红色椭圆框内是其典型实现(FileInputSteam.FileOutStream) ...
- vue2.0实现银行卡类型种类的选择
功能效果:vue2.0实现银行卡类型种类的选择 图片.png 参考代码如下: <template> <div class="app"> <header ...
- Codeforces 559A Gerald's Hexagon 数三角形
题意:按顺序给出一个各内角均为120°的六边形的六条边长,求该六边形能分解成多少个边长为1的单位三角形. 把单位三角形面积看做1,实际上就是求六边形面积.随便找六边形的三条互相不相邻的边,分别以这三条 ...
- HTML基础第六讲---表格
转自:https://i.cnblogs.com/posts?categoryid=1121494 上一讲,讲了关于<控制表格及其表项的对齐方式>,在这里我要讲讲表格及其属性 ,然后大家在 ...
- nuxt配置sass
没有比这更简单的了 只需要安装 node-sass sass-loader 就可以了 npm i node-sass sass-loader -D 然后就可以直接使用了: <style lang ...
- java线程——详解Callable、Future和FutureTask
回顾: 接上篇博客 java线程--三种创建线程的方式,这篇博客主要介绍第三种方式Callable和Future.比较继承Thread类和实现Runnable接口,接口更加灵活,使用更广泛.但这两种方 ...
- EXT gridPanel 添加图片
var workAreaGrid = new Ext.grid.GridPanel({ region: 'west', title: '工作面预警结果', store: wkSto, width: , ...
- Testfan软件测试社区
1. http://ask.testfan.cn/article/902 Appium 服务端安装-windows2. http://ask.testfan.cn/article/1078 最新 ...