关于数据统计和导出

大致的思路:在数据库里新建一个数据视图,基于这个视图,进行数据统计的查询,查询结果再返回到程序里面,这样子比在程序中处理得到结果的性能会高很多,因为视图的数据量可能很庞大,这样子会提高处理速度,达到满意的效果,难点就是拿到统计结果的sql语句;导出还是有poi,之前的那个做的比较简单,大量的数据导出文件有点大,可以对导出的文件做一个简单的压缩,提高反应速度。

具体化就是 分为前台后后台程序的设计了,前台打算弄一个页面,分两个部分,一个部分定制条件,即定制二维表的列结构,第二部分根据第一部分选择的条件动态的拿到统计数据,使用ajax写到页面;后台的代码就是设计接口和服务类,到数据库的视图里面拿到统计数据,还是采用的guice注入和线程池技术。 

 

这里记下一些重要步骤:

1,建立视图

mysql 建立视图的方式:create view v_orderview as select * from ````

 

2,获得统计数据sql 部分未完整,等我写完了再补充。

 

select distinct channelName as '支付渠道',sum(amount) as '交易额',sum(gameMoney) as '游戏币' from v_orderview

 

3,导出的话,就是拿到2得到的结果,最后加上一行列总和,写到excel中。 

 

4,关于今天写的访问者设计模式的一个简单记录。

描述:接触了数据对象和它的操作的耦合性,使得可以不依赖数据对象灵活的扩展它的操作。

模拟:mysql 和oracle数据库的优点和用户比较功能。

元素类:抽象元素类,mysql元素类,oracle元素类(里面有一个接受visitor的方法)

访问者类: 抽象或者访问者接口,优点比较访问者,用户比较访问者(里面有正对比较固定元素的不同操作方法)

对象结构类:可以为元素类集合增加元素,双重绑定访问者,然后调用它的操作。

代码下周贴出来分享。 

 

等我完成所有的设计之后,会给出一个demo,提供给大家学习,这是一个不错的对数据统计和导出的解决方案,欢迎指教,希望分享知识共同进步。

 

posted @ 2012-07-14 01:10  李福春  阅读(506)  评论(0编辑  收藏  举报