准备模板:

模板中使用jxls表达式,详细的jxls表达式使用可以到网上查找。一下给出简单的说明

<jx:forEach items="${results.list}" var="v" varStatus="vs">

${v.JIGOUID}

</jx:forEach>

jxls的循环方法,使用此方法,根据规定要放在要显示数据的第一列,items进行列表循环取值

使用el表达式取值。

1.项目路径获取

public class PathUtil {

/*
* 获取classpath
*/
public static String getClasspath(){
String path = (String.valueOf(Thread.currentThread().getContextClassLoader().getResource(""))+"../../").replaceAll("file:/", "").replaceAll("%20", " ").trim();
if(path.indexOf(":") != 1){
path = File.separator + path;
}
return path;
}

}

2.读取properties文件工具类

/**
 * 文件读取工具类
 *
 */
public class ReadProperties {
//fileName:properties文件名
public static String getValueByKey(String fileName,String key){
String value = "";
Properties prop = new Properties();
if(fileName != null){
ClassLoader classLoader = ReadProperties.class.getClassLoader();// 读取属性文件
InputStream in = classLoader.getResourceAsStream(fileName+".properties");
try {
prop.load(new InputStreamReader(in,"UTF-8"));//中文乱码问题
/// 加载属性列表
            Iterator<String> it = prop.stringPropertyNames().iterator();
            while (it.hasNext()) {
                if (it.next().equals(key)) {
                value = prop.getProperty(key);
                }
            }
            in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return value;
}

3.excel导出工具类

import java.util.HashMap;

import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jxls.transformer.XLSTransformer;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;

public class ExcelExport {

/**

* jar包:按照import导入即可,jar下载地址:http://www.manyjar.com/,也可自行网上下载,都能找到,同时也需要引入poi           *  的相关jar包

* 功能描述:<p>excel文件导出;根据模板进行导出<p>
* @param beanParams excel导出的数据
* @param response 下载时的浏览器响应
* @throws Exception 
*/
public static void excelExport(Map<String,Object> beanParams,HttpServletResponse response) throws Exception{
//获取请求
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
//获取参数报表唯一标识ID
String reportId = request.getParameter("reportId");
//根据reportId 获取excel.properties文件中的对应模板名称
String tempname = ReadProperties.getValueByKey("excel", reportId);
//取得文件的存储路径,得到静态文件
String temppath = PathUtil.getClasspath()+"uploadFiles//template//templatePath//";
String destPath = PathUtil.getClasspath()+"uploadFiles//template//downloadPath//";
//得到模板绝对路径
String templateFilePath = temppath+tempname;
//得到下载使用的文件名
String destname = tempname;
//得到下载文件绝对路径
String destFilePath = destPath+destname;
//创建结果集resultsMap
Map<String,Object> resultsMap = new HashMap<String,Object>();
//得到结果集
resultsMap.put("results",beanParams);
//创建jxsl对象
XLSTransformer xlsTransformer = new XLSTransformer();
//得到templateFilePath、结果集与destFilePath,并进行模版转换
xlsTransformer.transformXLS(templateFilePath, resultsMap, destFilePath);
//下载文件

FileDownload.fileDownload(response, destFilePath, destname);//方法上一篇已经给出,地址

//https://blog.csdn.net/gaohengtime/article/details/80755105

}
注:本文章仅用于学习交流使用。

}

java按照模板导出Excel工具类相关推荐

  1. 导出excel工具类

    1.excel工具类代码如下 package com.spring.excel.utils; import org.apache.poi.hssf.usermodel.*; import org.ap ...

  2. Java导入导出Excel工具类ExcelUtil

    前段时间做的分布式集成平台项目中,许多模块都用到了导入导出Excel的功能,于是决定封装一个ExcelUtil类,专门用来处理Excel的导入和导出 本项目的持久化层用的是JPA(底层用hiberna ...

  3. JAVA工具类(17)--Java导入导出Excel工具类ExcelUtil

    实战 导出就是将List转化为Excel(listToExcel) 导入就是将Excel转化为List(excelToList) 导入导出中会出现各种各样的问题,比如:数据源为空.有重复行等,我自定义 ...

  4. java使用模板导出Excel表格

    java使用模板导出Excel表格 文章目录 java使用模板导出Excel表格 模板示例 一.引入依赖 二.使用步骤 1.添加工具类 2.导出Excel 模板示例 一.引入依赖 <depend ...

  5. java 兼容excel_Java解析Excel工具类(兼容xls和xlsx)

    依赖jar org.apache.poi poi-ooxml 4.0.1 ExcelUtils.java package javax.utils; import java.io.File; impor ...

  6. 【工具篇】java导出excel工具类,多种模式自动配置,绝对值得你收藏

    文章目录 项目环境: 实现功能: 工具类实现 定义参数bean:ExportExcelBean.java 定义导出excel的表格主题:ExportExcelTheme.java [重点]导出exce ...

  7. 使用阿里开源的EasyExcel导入导出EXCEL——工具类

    工具类 package com.example.demo.util.excel;import com.alibaba.excel.EasyExcel; import com.alibaba.excel ...

  8. POI导出Excel工具类(简单看完就会)

    (一)POI介绍 Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. .NET的开发人员则可以利用NPOI ...

  9. JAVA使用POI写入excel 工具类【通用】

    使用写入excel工具类的例子 说明:改工具类是网上公开的,来源现在找不着了,我只是在原基础上修改了下,抽离了泛型.如有侵权,请通知博主 工具类代码: package com.system.util; ...

最新文章

  1. Windows下命令行及Java+Tesseract-OCR对图像进行(字母+数字+中文)识别,亲测可行
  2. hadoop中MapReduce中压缩的使用及4种压缩格式的特征的比较
  3. tms570 can 接收大量数据_CAN通讯系列--CAN总线基础3
  4. 使用FLVPlayback组件播放fms(fcs)的流式FLV文件
  5. window xp系统安装php环境_Windows Server 2003及XP系统如何安装SQL Server 2000数据库?
  6. 数据结构--栈--浏览器前进后退应用
  7. 冈萨雷斯《数字图像处理》读书笔记(十一)——表示和描述
  8. JAVA中的内部类(二)成员内部类
  9. Docker核心技术之联合文件系统
  10. 做三维模型_这几款倾斜实景三维裸眼3D采集软件你了解吗?
  11. JVM 内存设置大小
  12. android 城市列表 横屏,Android Launcher3去掉所有应用列表,横屏时左右两侧的留空...
  13. github使用介绍
  14. Android学习—7种形式的Android Dialog使用举例
  15. c语言python字典结构_在python中创建类似C语言中struct的结构来保存数据
  16. tp3.2 获取post,get,session,cookie变量
  17. p1口实验_「正点原子NANO STM32开发板资料连载」第二章 实验硬件资源详解
  18. MySQL(二)查询操作
  19. 可以DIY装修的商城系统,你也能拥有
  20. matlab中的dsolve函数是用来解决什么问题的?请详细解释并给我几个简单的例子...

热门文章

  1. POJ - 1637 Sightseeing tour(混合图欧拉回路的求解--建图跑最大流)
  2. selenium找到页面元素click没反应
  3. latex 参考文献显示问号_终于用回vscode写LaTeX了
  4. 一文带你看懂TCP/IP协议 (更新中 现更新至网络层部分)
  5. 用C语言来实现_输入一个日期(年月日),计算是这一年中的第几天
  6. CodeTop097 乘积最大子数组
  7. 原神抽卡模拟器(java简易版)
  8. CMD窗口下进入PowerShell和退出PowerShell
  9. 老婆:“给我讲讲你们程序员好笑的事情呗?”我扔给她这篇文章,她狂笑不止!
  10. 浅谈软件定制开发与软件外包的区别