execl表格导出问题
2018-01-10 18:27
169 查看
前几天在公司做了一个财务报表的导出,导出的表格模板已经做好了,自己测试的时候也是好的,能正常的通过浏览器直接下载出来。但是移植到项目中的时候,出现了问题,代码没有任何的问题,但是就是不下载模板。经过分析终于把问题给解决了,现在把问题写出来,防止大家有一样的问题。
表格的导出使用的是:
//创建一个HSSFWorkbook对象
HSSFWorkbook wb=new HSSFWorkbook();
//创建HSSFSheet对象
HSSFSheet sheet= wb.createSheet();
sheet.setDefaultRowHeightInPoints(20);
sheet.setDefaultColumnWidth(10);
sheet.setColumnWidth(1, 5000 );
//创建HSSFRow对象
//这个是第一行的东西
HSSFRow row1 = sheet.createRow(0);
row1.createCell(0).setCellValue(“订单APP(公司品牌):”);
//合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列
sheet.addMergedRegion(new CellRangeAddress(0,0,0,2));
其余的就不列出来了,就是先把固定的东西,写好,数据封装集合,遍历往里面放。
先来说问题出现的原因:
在页面用的是动态js进行访问的。
在js里面我用的是ajax进行访问,经过debug,确实进入了我们写的controller,,确实流的输出也走完了,代码没有任何问题,但是就是没有下载表格。
我们通过分析浏览器的response输出看到了,确实有数据但是,格式全是乱码的,所以就没有能能够输出来。通过分析因为是ajax请求,他把格式转换为json的格式输出了,不是我们想要的结果,所以就没有下载我们预想的效果。
最后我们换一个请求的方式就可以了。
用location.href=”xxxxxx.do?a=”b;的格式,我们就能正常的进项访问。
相同的问题,有一次在进行一个简单的controller跳转页面,代码全部已经走完了,但是在最后
return 页面的路径的时候,就一直报错handlerMethodInvoker()这个异常,其实也是和刚才这个原因一样。
建议:如果大家要直接跳转页面不用返回给面叶什么数据,就不用ajax了,直接超链接或者用location.href。这样能避免采坑。
表格的导出使用的是:
//创建一个HSSFWorkbook对象
HSSFWorkbook wb=new HSSFWorkbook();
//创建HSSFSheet对象
HSSFSheet sheet= wb.createSheet();
sheet.setDefaultRowHeightInPoints(20);
sheet.setDefaultColumnWidth(10);
sheet.setColumnWidth(1, 5000 );
//创建HSSFRow对象
//这个是第一行的东西
HSSFRow row1 = sheet.createRow(0);
row1.createCell(0).setCellValue(“订单APP(公司品牌):”);
//合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列
sheet.addMergedRegion(new CellRangeAddress(0,0,0,2));
其余的就不列出来了,就是先把固定的东西,写好,数据封装集合,遍历往里面放。
先来说问题出现的原因:
在页面用的是动态js进行访问的。
在js里面我用的是ajax进行访问,经过debug,确实进入了我们写的controller,,确实流的输出也走完了,代码没有任何问题,但是就是没有下载表格。
我们通过分析浏览器的response输出看到了,确实有数据但是,格式全是乱码的,所以就没有能能够输出来。通过分析因为是ajax请求,他把格式转换为json的格式输出了,不是我们想要的结果,所以就没有下载我们预想的效果。
最后我们换一个请求的方式就可以了。
用location.href=”xxxxxx.do?a=”b;的格式,我们就能正常的进项访问。
相同的问题,有一次在进行一个简单的controller跳转页面,代码全部已经走完了,但是在最后
return 页面的路径的时候,就一直报错handlerMethodInvoker()这个异常,其实也是和刚才这个原因一样。
建议:如果大家要直接跳转页面不用返回给面叶什么数据,就不用ajax了,直接超链接或者用location.href。这样能避免采坑。
相关文章推荐
- C#中导出电子表格Execl
- php execl表格导出
- 在UpdatePanel中GridView导出EXECL问题
- java用jxl实现导出execl表格
- 把datagridview导出到execl表格中、datagridview添加下拉列表框
- Execl表格中的数据导入到GridView控件中并导出打印
- 关于.net无法导出Execl问题
- 利用网页表格导出EXCEL表格加线框及表格内部间距的问题
- NPOI导出多表头Execl(通过html表格遍历表头)
- html页面表格导出excel出现科学计数法问题的解决
- poi导出word表格的问题
- java使用apache.poi SXSSFWorkbook导出大数据的execl表格并下载
- 解决BootStrap Table表格中含中文时点击导出数据无响应的问题(Uncaught INVALID_CHARACTER_ERR: DOM Exception 5)
- Laravel导出大量数据到表格csv及长数字显示不全问题
- mysql source 导入乱码问题 用命令导出数据到表格
- 利用Sql Server 2005自带工具导出表数据到Execl的问题
- JQuery Plugin-TableExport实现前端表格的导出功能(已解决表格pdf导出中文格式问题)
- .NET Execl表格导出浏览器一闪而过
- Html 中表格导出生成excel文件,解决中文导出失败问题。
- 文字PDF中表格导出execl