根据模板导出excel
@RequestMapping(value = "/export", method = RequestMethod.GET)
public void exportApprovalsLog(
@RequestParam(value = "department", required = false) String department,
@RequestParam(value = "approver_ids", required = false) List<String> approverIds,
@RequestParam(value = "start_time", required = false) Long startTime,
@RequestParam(value = "end_time", required = false) Long endTime,
@RequestParam(value = "case_code", required = false) String caseCode,
HttpServletRequest request, HttpServletResponse response) { if (CollectionUtils.isEmpty(approverIds)) {
approverIds = ImmutableList.of("777");
} List<ApproveLog> list = service.getApprovalsLog(department, approverIds, startTime, endTime, caseCode, null,null); try {
String path = request.getServletContext().getRealPath("")
+ "/excelTemplate/审核记录.xls"; //这个是我的excel模板 根目录是wabapp
InputStream in = new FileInputStream(new File(path));
HSSFWorkbook work = new HSSFWorkbook(in);
HSSFSheet sheet = work.getSheetAt(0); // 获取sheet
// 插入数据
for (int i = 1; i < list.size() + 1; i++) { // 表头占1行 i=1; 表头占2行 i=2
ApproveLog log = list.get(i - 1);
HSSFRow row = sheet.createRow(i); HSSFCell cell = row.createCell(0);
cell.setCellValue(log.getCaseId());
cell1 = row.createCell(1);
cell.setCellValue(log.getCaseName());
// 其他数据
} String fileName = ExportExcelUtils.makeFileName("审核记录", department,
ExportExcelUtils.getNamesByIds(constantService, approverIds), startTime, endTime);
OutputStream os = response.getOutputStream();// 取得输出流
response.setCharacterEncoding("UTF-8");
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-disposition",
"attachment;filename=" + new String(fileName.getBytes("UTF-8"), "iso8859-1") + ".xls"); // 防止中文乱码
work.write(os);
os.close();
} catch (FileNotFoundException e) {
throw new BizException(ErrorCode.DATA_NOT_EXIST, "文件路径错误");
} catch (IOException e) {
e.printStackTrace();
throw new BizException(ErrorCode.DATA_NOT_EXIST, "文件输入流错误");
}
}
根据模板导出excel的更多相关文章
- aspose.cells根据模板导出excel
又隔十多天没写博客了,最近都在忙项目的事情,公司人事变动也比较大,手头上就又多了一个项目.最近做用aspose.cells根据模板导出excel报价单的功能,顺便把相关的核心记下来,先上模板和导出的效 ...
- POI通过模板导出EXCEL文件
一般的EXCEL导出使用POI先创建一个HSSFWorkbook,然后通过不断创建HSSFRow,HSSFCell后设置单元格内容便可以完成导出. 这次在项目中需要用到模板,导出的内容包括(1.模板中 ...
- .Net NPOI 根据excel模板导出excel、直接生成excel
一.根据Excel模板导出excel 1.导入NPOI.dll 2.DAL中添加类ExportExcel.cs using NPOI.SS.UserModel; using System; usin ...
- ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据
ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...
- apache poi根据模板导出excel
需要预先新建编辑好一个excel文件,设置好样式. 编辑好输出的数据,根据excel坐标一一对应. 支持列表数据输出,列表中列合并. 代码如下: package com.icourt.util; im ...
- 按模板导出Excel
说明:开发环境 vs2012 asp.net mvc4 c# 注意:Excel模板有多个sheet页,导出Excel的时候,同时给多个sheet页填充数据 1.项目结构 3.Excel模板(注意she ...
- Java无模板导出Excel,Apache-POI插件实现
开发环境 jdk 1.8 Maven 3.6 Tomcat 8.5 SpringBoot 2.1.4.RELEASE Apache-POI 3.6 Idea 注意: 我是在现有的基于SpringBoo ...
- NPOI复制模板导出Excel
本人菜鸟实习生一枚,公司给我安排了一个excel导出功能.要求如下:1.导出excel文件有样式要求:2.导出excel包含一个或多个工作表:3.功能做活(我的理解就是excel样式以后可能会变方便维 ...
- poi根据excel模板导出Excel
/****单元格值对象**/public class Cells { /*** * 行 */ private int row; /** * 列 */ private int column; /** * ...
- WeihanLi.Npoi 根据模板导出Excel
WeihanLi.Npoi 根据模板导出Excel Intro 原来的导出方式比较适用于比较简单的导出,每一条数据在一行,数据列虽然自定义程度比较高,如果要一条数据对应多行就做不到了,于是就想支持根据 ...
随机推荐
- 曲演杂坛--使用TRY CATCH应该注意的一个小细节
群里一个朋友遇到一个TRY CATCH的小问题,测试后发现是自己从来没有考虑的情况,写篇blog加深下印象 --============================================ ...
- 记录.NET Core部署到Linux之发布项目到Linux(2)
1.选择文件夹发布项目到本地,通过Xftp上传文件到/home/wwwroot下:下面具体介绍下 2.通过Xftp直接拖拽压缩包到linux下,通过命令cd /home/wwwroot目录下;然后输入 ...
- WPF 获取表格里面的内容
DataRowView dataRow = DataGridCase.SelectedItem as DataRowView; 代码转为数组分别获取.
- const的详解
1.const的成员变量 常成员变量的值不能被更新,将在构造函数时候进行初始化 2.const的成员函数 常成员函数只能调用常成员函数,常成员函数不能修改任何成员变量的数值 3.const的成员对象 ...
- brew - 安装gradle
我安装完brew之后,马上开始安装gradle,但是shell总是卡在执行"brew update"这里,今天终于解决了,出现这样问题的原因是初次安装brew,它使用的源是国外的, ...
- docker-compose批量管理docker容器
# docker-compose编排工具 #批量管理(构建.启动容器) #centos7环境准备#安装docker-ce #安装docker-compose v1. sudo curl -o /usr ...
- 【文文殿下】CF1098C Construct a tree 题解
题解 挺水的一道题. Rating $ \color{orange} {2300}$ 以下送命题. 首先我们知道,所有子树大小之和就是节点个数加上从根到所有节点的路径长度之和. 他要求度数尽可能小,所 ...
- LOJ#3087. 「GXOI / GZOI2019」旅行者(最短路)
题面 传送门 题解 以所有的感兴趣的城市为起点,我们正着和反着各跑一边多源最短路.记\(c_{0/1,i}\)分别表示正图/反图中离\(i\)最近的起点,那么对于每条边\((u,v,w)\),如果\( ...
- 1.在html中引入js文件和Jquery框架
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- php中strpos()函数
1,strpos()函数 mixed strops(]) 返回needle在haystack中首次出现的数字位置,从0开始查找,区分大小写. 参数:haystack,在该字符串中进行查找. needl ...