SSM项目,文件下载
来源:互联网 发布:win10下u盘安装ubuntu 编辑:程序博客网 时间:2024/05/22 01:36
在Java Web项目中,文件下载很常见的功能,通过点击一个连接,访问Controller,生成文件,进行下载
<%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>
<a type="button" class="btn btn-info" href="<%=basePath %>car/download" target="_blank">热点区域分析</a>
@RequestMapping(value = "/download") public String analysisHot(HttpServletResponse response ) { // 创建HSSFWorkbook对象(excel的文档对象) HSSFWorkbook wkb = new HSSFWorkbook(); // 建立新的sheet对象(excel的表单) HSSFSheet sheet1 = wkb.createSheet("热点区域分析(上午)"); // 在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个 sheet1.setDefaultRowHeightInPoints(60); sheet1.setDefaultColumnWidth(50);//设置缺省列宽 HSSFRow row1 = sheet1.createRow(0); // 创建单元格(excel的单元格,参数为列索引,可以是0~255之间的任何一个 HSSFCell cell = row1.createCell(0); // 设置单元格内容 cell.setCellValue("热点区域分析(上午)"); HSSFCellStyle style=wkb.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); cell.setCellStyle(style); // 合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列 sheet1.addMergedRegion(new CellRangeAddress(0, 0, 0, 1)); // 在sheet里创建第二行 HSSFRow row2 = sheet1.createRow(1); // 创建单元格并设置单元格内容 row2.createCell(0).setCellValue("出发区域"); row2.createCell(1).setCellValue("car2go 使用量"); // 在sheet里创建其他行 List<Car> hot = new ArrayList<Car>(); //模拟, 自行查询数据 int i=2; for (Car cto : hot) { HSSFRow row3 = sheet1.createRow(i); ..... //写入文件 row3.createCell(0).setCellValue() row3.createCell(1).setCellValue() i++; } // 建立新的sheet对象(excel的表单) HSSFSheet sheet2 = wkb.createSheet("热点区域分析(下午)"); // 在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个 sheet2.setDefaultRowHeightInPoints(60); sheet2.setDefaultColumnWidth(50);// 设置缺省列宽 HSSFRow r1 = sheet2.createRow(0); // 创建单元格(excel的单元格,参数为列索引,可以是0~255之间的任何一个 HSSFCell c = r1.createCell(0); // 设置单元格内容 c.setCellValue("热点区域分析(下午)"); c.setCellStyle(style); // 合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列 sheet2.addMergedRegion(new CellRangeAddress(0, 0, 0, 1)); // 在sheet里创建第二行 HSSFRow r2 = sheet2.createRow(1); // 创建单元格并设置单元格内容 r2.createCell(0).setCellValue("出发区域"); r2.createCell(1).setCellValue("car2go 使用量"); // 在sheet里创建其他行 List<Car> hot2 = new ArrayList<Car>(); //模拟, 自行查询数据 i = 2; for (Car cto : hot2) { HSSFRow row3 = sheet2.createRow(i); row3.createCell(0).setCellValue(....); row3.createCell(1).setCellValue(....); i++; } // 输出Excel文件 java.io.OutputStream output; try { output = response.getOutputStream(); response.reset(); response.setHeader("Content-disposition", "attachment; filename=details.xls");// response.setContentType("application/msexcel"); response.setContentType("application/octet-stream"); wkb.write(output); output.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; }
阅读全文
0 0
- SSM项目,文件下载
- SSM项目文件下载方法二
- ssm 文件上传、下载
- SSM文件下载常见问题
- SSM框架 文件下载
- 下载Excel文件模板 ---文件下载--SSM
- SSM文件上传与下载
- ssm 文件上传与下载
- ssm项目中的文件上传
- SSM项目关于如何下载图片
- SSM框架下的文件下载
- 【SSM框架 SSM项目源码 SSM源码 下载】java框架整合Springmvc+mybatis+shiro+bootstrap
- 【SSM框架 SSM项目源码 SSM源码 下载】java框架整合Springmvc+mybatis+shiro+bootstrap
- 下载项目中的文件
- ssm单文件下载ftp服务器到浏览器
- ssm单文件下载ftp服务器到本地
- SSM框架 SSM项目源码 SSM源码
- SSM框架 SSM项目源码 SSM源码
- Matlab中sum函数,max函数以及any函数
- 文件操作 修改后的通讯录
- 归并排序
- Android .9.png图片的制作与使用
- js中(function(){…})()立即执行函数写法理解(经过控制台测试后修改) <转载>
- SSM项目,文件下载
- [LeetCode] 26. Remove Duplicates from Sorted Array
- [Python]python反射
- ARKit-简介
- [Hive]JsonSerde使用指南
- 卷积神经网络减小过拟合方法
- 文件的上传与下载之方式1:Servlet
- 1.10 C# 抽象类和接口
- 01背包&&打印路径(hdu6083)度度熊的午饭时光