package cn.shiyanjun.test;

 import java.util.ArrayList;
import java.util.List; public class ExcelTest3 {
List<Integer> rowData = getRowData(17);
public static void main(String[] args) {
ExcelTest3 excelTest3 = new ExcelTest3();
excelTest3.exportExcelTest();
} // ==================================================================================================
public void exportExcelTest() {
int dataCount = rowData.size();//数据总数59
int exNum = 6;//每个文件导出数
int qryNum = 8;//已知查询数
int qryCount = getCount(dataCount,qryNum);
int end = 1;
int fileNum = 0;
List<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < qryCount; i++) {
List<Integer> beanList = new ArrayList<Integer>();
if(i != (qryCount - 1)){//如果不是最后一次查询
beanList = queryForPage(i*qryNum, (i+1)*qryNum);//一次查8条
}else{
beanList = rowData.subList(i*qryNum, dataCount);
}
for (int j = 0; j < beanList.size(); j++) {//遍历这8条数据
list.add(beanList.get(j));
if(list.size() == exNum || (end ==qryCount && j == beanList.size() -1 )){
System.out.println((fileNum+1) + ".xls");//创建文件
System.out.println("导出"+list.size()+"条数据:"+list);
list.clear();
fileNum++;
}
}
end++;
} } public List<Integer> queryForPage(int startIndex, int pageSize){
List<Integer> pageData = rowData.subList(startIndex, pageSize);
return pageData;
} //根据count和rows来计算个数
public int getCount(int count, int rows) {
int num = 1;
if(count >= rows){
if(count % rows == 0){
num = count/rows;
}else{
num = count/rows + 1;
}
}
return num;
} //创建一个包含若干2位随机整数的list集合
public List<Integer> getRowData(int count){
List<Integer> list = new ArrayList<Integer>();
for(int i = 0; i < count; i++){
// int num = (int) Math.round(Math.random()*90+10);
list.add(i);
}
return list;
} public void printExcelApi(List<Integer> exList, List<Integer> list){
exList.addAll(list);
} }

测试分页查询出数据并分文件导出[java工程]的更多相关文章

  1. 根据wsdl文件,Java工程自动生成webservice客户端调用

    根据wsdl文件,Java工程自动生成webservice客户端调用 1,工具:带有webservice插件的myeclips 2,步骤: (1),新建一个Java工程:relationship (2 ...

  2. MySQL分页查询大数据量优化方法

    方法1: 直接使用数据库提供的SQL语句 语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N适应场景: 适用于数据量较少的情况(元组百/千级)原因/缺点: ...

  3. mysql 数据库 分表后 怎么进行分页查询?Mysql分库分表方案?

    Mysql分库分表方案 1.为什么要分表: 当一张表的数据达到几千万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了.分表的目的就在于此,减小数据库的负担,缩短查询时间. m ...

  4. SQL Server数据库Union和Union All查询出数据的区别?

    好久没有更新博客了,可能是最近比较忙,总是忽略了一些事情,今天查了做了一些数据分析的数据,突然感觉对Union和Union all有些不太理解了,可能是自己老了吧,就翻了一些资料,进行回忆和学习,趁着 ...

  5. Oracle 分页查询与数据去重

    1.rownum字段 Oracle下select语句每个结果集中都有一个伪字段(伪列)rownum存在.rownum用来标识每条记录的行号,行号从1开始,每次递增1.rownum是虚拟的顺序值,前提是 ...

  6. Oracle分页查询排序数据重复问题

    参考资料: http://docs.oracle.com/database/122/SQLRF/ROWNUM-Pseudocolumn.htm#SQLRF00255 http://blog.csdn. ...

  7. 【MySQL】MySQL中查询出数据表中存在重复的值list

    1.目的:查询MySQL数据表中,重复记录的值 2.示例: 3.代码: select serial_num,count(*) as count FROM card_ticket GROUP BY se ...

  8. 借鉴+总结!! mysql 客户端命令行下 查询数据并生成文件导出

    方式1:在mysql命令行环境下执行: sql语句+INTO OUTFILE +文件路径/文件名 +编码方式(可选)  例如: select * from user  INTO OUTFILE  '/ ...

  9. mongodb-导出数据到csv文件或json文件

    在mongodb的bin目录下, 有一个mongoexport, 可用于数据的导出 [wenbronk@localhost bin]$ ./mongoexport --help Usage: mong ...

随机推荐

  1. 使用sql创建表并添加注释

    Create table T_ErrorLogTable_tb ( ELTID int identity(1,1) primary key,--编号 ELTTime date,--错误发生日期 ELT ...

  2. 安装python-devel 在升级到python2.7之后

    分别执行如下命令: # yum update # yum install centos-release-SCL # yum search all python27 在搜索出的列表中发现python27 ...

  3. 2016年6月29日 星期三 --出埃及记 Exodus 14:26

    2016年6月29日 星期三 --出埃及记 Exodus 14:26 Then the LORD said to Moses, "Stretch out your hand over the ...

  4. DateFormat 中间加别的字符

    private static DateFormat dateTime = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");

  5. List<T>

    List<FormEntity> formEntity = new List<FormEntity> (){new FormEntity{ IsFile = true,Name ...

  6. Python 2.7.9 Demo - JSON的编码、解码

    #coding=utf-8 #!/usr/bin/python import json; dict = {}; dict['name'] = 'nick'; dict['say'] = 'hello ...

  7. C语言第3天标准的输入输出函数

    :first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { border: 0; m ...

  8. PHP判断用户设备是否是移动设备

    摘自http://www.oschina.net/code/snippet_1432190_46913   <?php function isMobile() { // 如果有HTTP_X_WA ...

  9. BZOJ 2661 连连看(费用流)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2661 题意:给出一个区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y) ...

  10. js九宫格的碰撞检测

    说来惭愧,我一直以为四四方方的拖拽碰撞检测是一个比较容易的事情,后来试过一次,真是让我耗费了无数的脑细胞,原理其实不难,但是具体做起来可就让我很恶心,这可能跟我驾驭的代码数量有关系,我一般也就写半屏幕 ...