import jxl.Workbook;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
public void exportExcelFile() {
try {
HttpServletResponse response = ServletActionContext.getResponse();
String fileName = Long.toString(System.currentTimeMillis())+".xls";
OutputStream os = response.getOutputStream();// 取得输出流
response.reset();// 清空输出流
response.setHeader("Content-disposition", "attachment; filename="
+ fileName);// 设定输出文件头
response.setContentType("application/msexcel");// 定义输出类型
ResourceMgt
.addDefaultResourceBundle("com.zte.cnt_manager_resource");
String title = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.title");
WritableWorkbook wbook = Workbook.createWorkbook(os); // 建立excel文件
String tmptitle = title; // 标题
WritableSheet wsheet = wbook.createSheet(tmptitle, 0); // sheet名称
// 设置excel标题
WritableFont wfont = new WritableFont(WritableFont.ARIAL, 16,
WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,
Colour.BLACK);
WritableCellFormat wcfFC = new WritableCellFormat(wfont);
wcfFC.setBackground(Colour.AQUA);
wsheet.addCell(new Label(1, 0, tmptitle, wcfFC));
// 读取资源文件,获得excel的第一行文字内容。
String cntid = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.cntid");
String cntname = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.cntname");
String catname = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.catname");
String cntcreatetime = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.cntcreatetime");
String truename = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.truename");
String statusname = ResourceMgt
.findDefaultText("cnt.expexcel.cntmanager.status");
// 生成excel 第一行数据。
wsheet.addCell(new Label(0, 0, cntid));
wsheet.addCell(new Label(1, 0, cntname));
wsheet.addCell(new Label(2, 0, catname));
wsheet.addCell(new Label(3, 0, cntcreatetime));
wsheet.addCell(new Label(4, 0, truename));
wsheet.addCell(new Label(5, 0, statusname));
// 导出的excel主体 数据内容。
mcntContentExtends.setApplytimestart(mcntContentExtends
.getApplytimestart());
mcntContentExtends.setApplytimeend(mcntContentExtends
.getApplytimeend());
// 对导出的数据 排序。
PageUtilEntity puEntity = new PageUtilEntity();
puEntity.setOrderByColumn("applytime");
puEntity.setIsAsc(false);
MsysConfig msysConfig = new MsysConfig();
msysConfig.setCfgkey("appstore.terminal.model");
msysConfig = msysConfigLS.getMsysConfig(msysConfig)==null?new MsysConfig():msysConfigLS.getMsysConfig(msysConfig);
String cfgvalue = msysConfig.getCfgvalue()==null?"":msysConfig.getCfgvalue();
if("1".equals(cfgvalue)){
mcntContentExtends.setCnttype(new Long(1));
}else if("2".equals(cfgvalue)){
mcntContentExtends.setCnttype(new Long(2));
}else{ // 暂时不支持 两者 都支持的情况。
}
// 判断是否要根据页面的查询条件来导出数据。
if ("y".equals(flag)) {
// mcntContentExtends = new McntContentExtends();
mcntContentExtends = new AppcntContentExtends();
if("1".equals(cfgvalue)){
mcntContentExtends.setCnttype(new Long(1));
}else if("2".equals(cfgvalue)){
mcntContentExtends.setCnttype(new Long(2));
}else{ // 暂时不支持 两者 都支持的情况。
}
}
// TableDataInfo tableDataInfo = mcntContentLS
// .pageInfoQueryWithForeignObj(mcntContentExtends, 0, 10000,
// puEntity);
TableDataInfo tableDataInfo = appcntContentLS
.appPageInfoQueryWithForeignObj(mcntContentExtends, 0,
10000, puEntity);
mcntExtendsList = (List<AppcntContentExtends>) tableDataInfo
.getData();
if (mcntExtendsList == null || mcntExtendsList.size() == 0) {
return;
}
// 开始生成主体内容
int i = 1;
for (AppcntContentExtends mcntContentExtend : mcntExtendsList) {
wsheet.addCell(new Label(0, i, mcntContentExtend.getCntid()));
wsheet.addCell(new Label(1, i, mcntContentExtend.getCntname()));
wsheet.addCell(new Label(2, i, mcntContentExtend
.getClass1name()
+ "--" + mcntContentExtend.getClass2name()));
wsheet
.addCell(new Label(3, i, mcntContentExtend
.getApplytime()));
wsheet
.addCell(new Label(4, i, mcntContentExtend
.getTruename()));
String statusString = "";
Integer status = mcntContentExtend.getStatus()==null?new Integer(10):mcntContentExtend.getStatus();
if (status == 0) {
statusString = "申请";
} else if (status == 1) {
statusString = "上线";
} else if (status == 2) {
statusString = "下线(暂停)";
} else if (status == 3) {
statusString = "归档";
}else if(status==10){
statusString ="无效状态";
}
wsheet.addCell(new Label(5, i, statusString));
i++;
}
// 主体内容生成结束
wbook.write(); // 写入文件
wbook.close();
os.close(); // 关闭流
return;
} catch (IOException e1) {
e1.printStackTrace();
return;
} catch (RowsExceededException e2) {
e2.printStackTrace();
return;
} catch (WriteException e3) {
e3.printStackTrace();
return;
} catch (Exception e4) {
e4.printStackTrace();
return;
}
}
分享到:
相关推荐
在这个“java excel导出demo”中,我们将会深入探讨如何使用Apache POI库来实现Excel文件的创建和导出。 Apache POI提供了一系列API,使得开发者可以方便地读取、写入Excel文件。这个“poi-util”文件可能包含了...
这个"Struts2+Excel导出Demo"就是实现这一功能的一个实例。 首先,Struts2与Excel导出的结合主要涉及到以下几个关键知识点: 1. **Struts2 Action**: Struts2框架的核心是Action,它是业务逻辑的载体。在导出Excel...
本示例"Excel导出demo"就是基于Apache POI实现的,用于演示如何在Java应用中生成Excel文件。 Apache POI提供了丰富的API,使得开发者可以灵活地创建工作簿(Workbook)、工作表(Sheet)、行(Row)和单元格(Cell...
"excel导出demo"这个主题通常涉及到如何通过编程方式来生成和导出Excel文件,这在许多业务系统和Web应用程序中非常常见。下面将详细介绍相关的知识点。 首先,我们需要了解的是编程接口,通常我们会使用Python中的`...
在.NET开发环境中,C#是一种常用的编程语言,用于构建各种应用程序。在处理数据时,Excel是一...这个DEMO展示了如何使用EPPlus进行数据导出,对于初学者或者需要快速实现Excel导出功能的开发者来说,是一个宝贵的资源。
这个"EXCEL导出DEMO"案例,无疑是将这些知识点融入到实践中,提供了一个可直接使用的模板,对于Java开发者来说,是一个非常有价值的参考。通过学习和理解这个示例,可以更好地掌握Java处理Excel文件的能力,提高工作...
thinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入...demothinkhphp3.2 excel导入导出demothinkhphp3.2 excel导入导出demo
通过这个"EasyExcel导入导出demo",开发者可以快速了解如何在SpringBoot项目中实现Excel的导入与导出功能,同时也可以根据实际需求进行扩展,例如添加更复杂的数据验证、支持动态生成Excel模板等。
在IT行业中,Excel导出是常见的数据处理任务,特别是在数据库管理和数据分析领域。Java、Excel和Mysql这三者结合,通常意味着我们需要用Java编写程序,从Mysql数据库中获取数据,然后将这些数据导出为Excel格式的...
java实现的Excel表格导入与导出demo,已用于实际项目当中,可行。
项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全栈开发),有任何使用问题欢迎随时与我联系,我会及时为您解惑,...
本示例"EXCEL导入导出demo"聚焦于如何利用Java的一个库——jxl,来实现JSP(Java Server Pages)对Excel文件的导入与导出功能。这个功能对于Web应用程序来说极其实用,它允许用户通过浏览器上传Excel文件进行处理,...
这个“php导出数据为excel的demo”就是解决这个问题的一个示例。 首先,我们来详细解释这个标题和描述所涉及的知识点: 1. **PHPExcel库**:这个项目中包含的`PHPExcel`文件,是一个用PHP编写的库,用于读取和写入...
下面将详细阐述LODOP、Excel导出以及JavaScript在其中的作用。 首先,LODOP是“云打印”技术的一种实现,由上海杰普软件科技有限公司开发。它是一款轻量级的打印控件,主要用在浏览器环境中,用于解决网页打印的...
一、源码特点 使用C#进行导入导出Excel,看了网上的很多资源,认为这个应该是最好的 ... 本源码是一个Excel导入导出Demo源码,简单好用,欢迎下载 三、菜单功能 1、运行后,点击导出,即可查看Excel表
在描述中提到了"word_excel导出demo",这可能是一个包含示例代码的文件,演示如何同时导出Excel和Word文件。对于Word文件的导出,可以使用类似的库,例如Java的Apache POI的`HWPFDocument`和`XWPFDocument`,Python...
Excel导入导出demo,导入支持2003和2007,通过了不同的方法。导出可以按javabean属性导出,也可以根据指定字段导出
在IT行业中,处理数据是日常任务之一,而Excel作为数据管理的常用工具,其导入导出功能至关重要。本文将深入探讨使用Apache POI和JXLS库在Java环境中实现Excel文件的导入与导出。 首先,Apache POI是Apache软件基金...
excel导出的小demo,以0开头的串仍可保留
ASP.NET 是一种基于微软.NET Framework的服务器端网页开发平台,用于构建动态网站、Web应用程序和Web服务。在ASP.NET中,导出数据到Excel是一种...通过深入学习和实践,你可以灵活地构建满足各种需求的Excel导出功能。