欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

jxls实现多sheet的报表导出

程序员文章站 2022-05-17 09:21:54
...

大家都说软件工程就是吹水,水越高工程越大。项目越大,要写的文档就越多,特别是excel报表之类,然后就想定义一个excel模板,像写jsp那样,往里面传数据就可以,现在jxls完全可以轻松搞定,只需1秒。

先上图:
jxls实现多sheet的报表导出
jxls实现多sheet的报表导出

核心代码:

 String template = "/xlstemplate/test.xls";
            InputStream is = ExportExcelByTemplate.class.getResourceAsStream(template);
            OutputStream os = outputStream;
            Transformer transformer = TransformerFactory.createTransformer(is, os);
            AreaBuilder areaBuilder = new XlsCommentAreaBuilder(transformer);
            List<Area> xlsAreaList = areaBuilder.build();
            Area xlsArea = xlsAreaList.get(0);
            Context context = new Context();
            Map<String, Object> map = new HashMap();
            map.put("a", "测试1");
            map.put("b", "测试2");
            map.put("c", "测试3");
            map.put("d", "测试4");
            context.putVar("yanhui", map);
            xlsArea.applyAt(new CellRef("yanhui!A1"), context);

            Area xlsArea1 = xlsAreaList.get(1);
            xlsArea1.applyAt(new CellRef("yanhui1!A1"), context);

            transformer.write();
            is.close();

项目下载:
链接:http://pan.baidu.com/s/1nvJnXQ5 密码:s389

全CSDN的丰(好)色(se)博客,这里有书本看不到的Java技术,电影院禁播的电影,欢迎关注QQ群494808400