公共类
package com.zfwlxt.djcourse.common;
import java.io.OutputStream;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public class Export {
public void export(String sheetname,String filename,String[] title,List list,HttpServletResponse response) throws Exception {
try {
OutputStream os = response.getOutputStream();
WritableWorkbook wbook = Workbook.createWorkbook(os); // 建立excel文件
WritableSheet wsheet = wbook.createSheet(sheetname, 0); // 工作表名称
// 设置Excel字体
WritableFont wfont = new WritableFont(WritableFont.ARIAL, 12,
WritableFont.BOLD, false,
jxl.format.UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.BLACK);
WritableCellFormat titleFormat = new WritableCellFormat(wfont);
for (int i = 0; i < title.length; i++) {
Label excelTitle = new Label(i, 0, title[i], titleFormat);
wsheet.addCell(excelTitle);
}
response.setContentType(“application/vnd.ms-excel”);
response.setHeader(“Content-Disposition”, “attachment; filename=”+filename);
//Iterator it = list.iterator();
for(int i=0;i<list.size();i++)
{
List slist=(List)list.get(i);
for(int j=0;j<slist.size();j++)
{
if(“”.equals(slist.get(j))||”null”.equals(slist.get(j))||null==slist.get(j))
{
Label content = new Label(j, i+1, null);
wsheet.addCell(content);
}
else
{
Label content = new Label(j, i+1, slist.get(j).toString());
wsheet.addCell(content);
}
}
}
wbook.write(); // 写入文件
wbook.close();
os.close();
} catch (Exception e) {
throw new Exception(“导出文件出错”);
}
}
}
在action里调用改类,下面介绍各项参数。
Export export=new Export();
String[] title = {“课程名称”,”标准学时”,”点击次数”,”学习总时长”,”参加人数”,”启动人数”,”完成人数”};//excel里表头的字段值
DjCouListQuery query = newQuery(DjCouListQuery.class,
DEFAULT_SORT_COLUMNS);//获得从页面传过来的参数
List list=new ArrayList();//新建一个list
List listMember=djListManager.listbyCourse(query);//从数据库得到一个要导出数据的list
for(int i=0;i<listMember.size();i++)//循环得到的数据
{
List slist=new ArrayList();//新建一个list
DjCouListQuery obj = (DjCouListQuery)listMember.get(i);//得到从数据库里得到的数据的每一条数据,是实体的话按这个方法,如果是拼出来的值,用object数组接收
//Object[] obj = (Object[])listMember.get(i); slist.add(0,obj.getCsName());
slist.add(1,obj.getCsHour());//把每条数据里要导出的数据写入一个list里,注意要和excel里的表头顺序一致
slist.add(2,obj.getCsClicktimes());
slist.add(3,obj.getJoinNum());
slist.add(4,obj.getJoinNum());
slist.add(5,obj.getStartNum());
slist.add(6,obj.getFinaNum());
list.add(slist);//把每条信息组成的slist写入到list里
}
export.export(“课程统计”, “course.xls”, title, list, getResponse());
参数说明
第一个参数:excel里sheet的名称
第二个参数:导出文件的名称
第三个参数:一个数组,excel里表头的一个数组集合
第四个参数:要传过去的list,是最大的一个list
第五个参数:要用到的respons,这个参数是写死的。
分享到:
相关推荐
为了更好地理解这一过程,你可以参考提供的文档:《用OLE DOI 实现ABAP导出EXCEL表格.docx》和《ABAP-透過OLE操作OFFICE.docx》。同时,《OLE.pdf》可能包含更深入的OLE和DOI技术细节,这对于优化和调试代码会非常有...
在实际操作中,用户只需运行压缩包中的"导出数据字典工具.exe"文件,按照软件提供的界面指引,选择目标数据库,设置导出格式(如文本文件、Excel表格等),然后就可以一键导出所有相关信息。导出后的文件可以作为...
C#导出数据到EXCEL表格是个老生常谈的问题了,写这篇文章主要是给和我一样的新手朋友提供两种导出EXCEL的方法并探讨一下导出的效率问题,本文中的代码直接就可用,其中部分代码参考其他的代码并做了修改,抛砖引玉,...
本篇文章将详细介绍如何利用iText库操作PDF,从数据库中导出大量数据。 首先,我们需要理解iText的基本概念和功能。iText提供了丰富的API,可以用于创建新的PDF文档、添加文本、图像、表格、链接等元素,以及对已有...
本话题主要关注一个基于Visual Basic (VB) 的源码实现,它提供了查询数据、检查重复数据以及导出数据的功能。对于VB程序员或者需要进行数据处理的用户来说,这是一个非常实用的工具。下面我们将深入探讨这些功能的...
数据字典是数据库管理系统中的一...通过定期导出数据字典,可以跟踪数据库的变化,确保数据库设计的一致性和完整性,同时也有助于问题排查和性能优化。因此,熟练掌握并使用这类工具,是提升数据库管理效率的有效途径。
2. 选择要导出的数据源:根据需求,导航至需要导出数据的模块,如网络性能监控(NPM)、服务器与应用程序监控(SAM)或其他插件。 3. 进行数据筛选:在相应的监控视图中,使用过滤器或搜索功能定位到所需的数据范围。 ...
可以通过限制导出数据量、设置导出频率等方式进行安全控制。 总结来说,这个Java web项目通过Apache POI库实现了数据到Excel的动态导出,涉及到了文件操作、数据结构映射、模板应用和性能优化等多个方面,是Java ...
在Android平台上,将数据导出到...总之,Android导出数据到Excel表格涉及到SQLite数据库的操作和使用Apache POI库生成Excel文件。理解这两个核心部分,结合适当的内存管理技巧,就能实现高效且稳定的数据导出功能。
导出数据字典有助于理解数据库结构,进行审计,或在迁移、备份和恢复等操作时作为参考。同时,将这些信息整理成Excel或Word格式,可以方便非技术团队成员阅读,提高团队协作效率。 总的来说,导出SQL Server的数据...
“数据表格里的列可自选的,可隐藏不想导出的列”,这个特性允许用户根据需求定制导出内容,避免导出不必要的数据。EXTJS Grid的列可以通过配置进行隐藏或显示,用户可以通过交互式菜单或者按钮来控制。在实现时,...
标题 "pb数据窗口导出到word或者excle" 涉及的是在PowerBuilder(PB)环境中使用数据窗口(DataWindow)组件将数据导出到Microsoft Word或Excel文档的操作。PowerBuilder是一种流行的可视化开发工具,主要用于构建...
总的来说,这份参考资料将帮助用户全面了解OBA系统中的数据导入导出操作,提供从数据准备到执行、再到后期处理的全程指导,从而提升用户在数据管理方面的专业技能,使他们在处理复杂数据任务时更加得心应手。
### Oracle 数据库数据导入导出操作手册解析 #### 手册概述 该操作手册由中科软科技股份有限公司于2019年5月发布,旨在指导数据处理人员如何正确地使用Oracle数据库进行数据导入与导出操作。手册不仅包含了具体的...
在工业自动化领域,SIMATIC WinCC是一款广泛使用的可视化软件,用于监控和操作各种生产过程。WinCC的强大功能之一是其历史数据...在实践中,根据具体需求进行适当的调整和优化,可以提高数据导出的效率和结果的准确性。
在IT行业中,数据库管理是至关重要的任务之一,而导出数据表结构是数据库管理中的一个基本操作。这个“导出数据表结构工具.zip”压缩包显然包含了一个或多个用于帮助用户方便地完成这一任务的工具。下面将详细介绍这...
通过以上分析,我们深入了解了使用VB代码从数据库快速导出数据到Excel的技术细节,包括错误处理、数据库操作、文件对话框使用以及Excel对象模型的应用。这些知识点不仅适用于特定的VB项目,也对其他编程语言中的类似...
在"jxl导出数据"这个主题中,我们主要关注如何利用JXL库来导出数据到Excel格式,这对于数据处理、报告生成或者数据分析场景尤其有用。下面我们将深入探讨JXL库的使用方法、核心概念以及导出数据的步骤。 首先,JXL...