jxls导出xls 报表
来源:互联网 发布:php授权验证系统v2.1 编辑:程序博客网 时间:2024/06/06 19:50
引入jar:
<dependency><groupId>net.sf.jxls</groupId><artifactId>jxls-core</artifactId><version>1.0.2</version></dependency><dependency><groupId>net.sf.jxls</groupId><artifactId>jxls-reader</artifactId><version>1.0.2</version></dependency>
1.前台jsp:
<li><a id="v_exportExcel" class="icon" href="sysAssessResultRegister/downloadAssessResult" target="dwzExport"><span>下载</span></a></li>
2.后台action:
@RequestMapping("/downloadReport")public ModelAndView downloadReport(HttpServletResponse response,SysAssessResultRegister model,HttpServletRequest request) {String employeeId = String.valueOf(SessionHelper.getEmployeeId(request));model.setAssessPersonId(employeeId);List<SysAssessResultRegister> list= sysAssessResultRegisterService.getSysAssessResultRegisterListByObj(model);if(list!=null&&list.size()>0){for(SysAssessResultRegister p:list){p.setAssessPerson((String) map.get(p.getAssessPersonId()));if("DEPT".equals(p.getAssessmentObject())){p.setAssessmentObjectStr("部门");sysId=p.getDepartmentId();}else if("PERSON".equals(p.getAssessmentObject())){p.setAssessmentObjectStr("个人");p.getEmployeeName();sysId=p.getEmployeeId();}}}map=null;try{Map excelMap = reportService.exportToReportList(list,model);if(excelMap!=null){Workbook wb = (Workbook)excelMap.get("Workbook");HSSFSheet sheet = (HSSFSheet) wb.getSheetAt(0);int rowCount=0;int colCount=2;for(int i=0;i<assessobjList.size();i++){String assessObj=(String) assessobjList.get(i);rowCount=(Integer)assessObjmap.get(assessObj)+colCount;sheet.addMergedRegion(new Region(colCount,(short) 1,rowCount-1,(short)1));sheet.addMergedRegion(new Region(colCount,(short) 3,rowCount-1,(short)3));sheet.addMergedRegion(new Region(colCount,(short) 4,rowCount-1,(short)4));sheet.addMergedRegion(new Region(colCount,(short)7,rowCount-1,(short)7));colCount=rowCount;}String dateStr = model.getAssessMonth();String fileName = SessionUtil.getUsername(request)+"_"+dateStr+"_check.xls";response.reset();response.setHeader("Content-Disposition","attachment; filename=\""+fileName+"\"");response.setContentType("application/vnd.ms-excel; charset=UTF-8");wb.write(response.getOutputStream());}else{return ajaxDoneError("文件导出失败!错误信息: 没有数据!");}}catch(Exception e){return ajaxDoneError("文件导出失败!错误信息:"+e.getMessage());}return null;}
3.service层包装:
@Overridepublic Map exportToReportList(List<SysAssessResultRegister> list,SysAssessResultRegister model){String templateFileName = LocationInitUtil.getExeclLocation()+"AssessResultRegisterList_Template.xls";InputStream in = null;Workbook wb = null;if(list!=null&&list.size()>0){for(int i = 0; i<list.size(); i++){SysAssessResultRegister v = (SysAssessResultRegister)list.get(i);}}Map excelMap = new HashMap();Map beans = new HashMap();beans.put("resultList",list);Configuration config = new Configuration();XLSTransformer transformer = new XLSTransformer(config);try{in = new FileInputStream(new File(templateFileName));wb = transformer.transformXLS(in,beans);excelMap.put("Workbook",wb);}catch(ParsePropertyException e){e.printStackTrace();}catch(Exception e){e.printStackTrace();excelMap = null;}return excelMap;}
xls模板文档如图:
0 0
- jxls导出xls 报表
- POI+JXLS测试Excel报表导出
- jxls实现多sheet的报表导出
- JXLS-----JXLS导出Excel
- jxls框架解析(一)报表导出快速入门
- ireport报表导出 pdf xls doc
- JXLS-----JXLS导出Excel实例
- jxls 报表生成
- Jxls导出excel的若干方式总结(十)-- 在导出报表中插入单张图片
- Jxls导出excel的若干方式总结(十二)-- 在导出报表中动态插入图片
- Jxls 导出excel
- jxls模板导出excel
- Jxls 导出excel
- jxls模板导出excel
- jxls导出excel
- Excel 模板导出---JXLS
- JXLS模板导出EXCEL
- jxls导出功能代码
- 【TV】智能电视机四大操作系统介绍
- Alluxio计算框架整合系列 (一) -- Alluxio & Apache Hive
- RecycleView 单击和长按事件以及美女画廊的使用场景
- 编译代码时出现/usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"错
- iOS 图片 无线滚动效果 利用 3张UIImageView 实现
- jxls导出xls 报表
- 剑指offer-面试题3 二维数组中的查找
- linux下的expect的安装和使用
- ActiveMQ使用spring JmsTemplate发送消息(一)
- 使用c3p0与DBCP连接池,造成的MySql 8小时问题解决方案
- 浅谈Ajax
- 速记:从 OPC 到 OPC UA
- 《java编程思想》读书笔记
- java-Calendar类