java导出excel报表

Posted 文刀水告

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java导出excel报表相关的知识,希望对你有一定的参考价值。

1、使用的是ssm框架,maven构建项目

2、使用jxls

3、maven依赖:

<dependency>

    <groupId>net.sf.jxls</groupId>

    <artifactId>jxls-core</artifactId>

    <version>1.0.5</version>

   </dependency>

 

    <dependency>

      <groupId>net.sf.jxls</groupId>

      <artifactId>jxls-reader</artifactId>

      <version>1.0.5</version>

    </dependency>

4、代码实现

@RequestMapping("/alarmTopdf")

@ResponseBody

public AjaxResult alarmTopdf(HttpServletRequest req,HttpServletResponse response) throws OprException, ParseException{

AjaxResult ajaxResult = new AjaxResult();

List<RealData> list = (List<RealData>) SecurityUtils.getSubject().getSession().getAttribute("lm");

HashMap map = (HashMap) SecurityUtils.getSubject().getSession().getAttribute("pmap");

HashMap beans = new HashMap();   

String fileFlag = String.valueOf(System.currentTimeMillis());

String dataInfo = "";

 

String path = req.getSession().getServletContext().getRealPath("/"); 

String userInfo = null;

String templateDir = path+"/excel-template/historyalarm.xls";//

SimpleDateFormat sf = new SimpleDateFormat("yyyyMMddHHmmss");

fileFlag = sf.format(new Date());

String outPutDir = path+"/outfile/报表告警数据"+fileFlag+".xls";

InputStream  inputStream = null;

 

XLSTransformer xls = new XLSTransformer();

beans.put("list", list);

beans.put("map", map);

try {

xls.transformXLS(templateDir,beans,outPutDir);

userInfo = "/outfile/报表告警数据"+fileFlag+".xls";

} catch (ParsePropertyException e) {

e.printStackTrace();

} catch (InvalidFormatException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

AjaxResult result = ajaxResult.success(userInfo);

return result;

}

 

分析

在做这个的时候 遇到一个坑:一定要有这个的,不然是不会出现excel文件的

 excel模板:jstl表达式实现

 

以上是关于java导出excel报表的主要内容,如果未能解决你的问题,请参考以下文章

Java报表工具FineReport导出EXCEL的四种方式

Java报表工具FineReport导出EXCEL的四种API

Java报表工具FineReport导出EXCEL的四种API

java 导出excel表格 高手进

java 实现导出excel报表

Java EE中用POI将结果导出为Excel报表文件的实现