簡介
對於導出excel我一直以為用poi、jxt、easyExcel的實現就夠了,直到接觸了freemakre-excel以后,我才發現我錯了,原來還有一種實現比前兩者都更簡單、便捷。
原作者:csdn 大腦補丁
原作者教程:https://blog.csdn.net/x541211190/article/details/105629749
freemarker頁面函數語法地址:http://blog.csdn.net/u010722643/article/details/41720517,也可以去官網:http://freemarker.foofun.cn/ref_directives.html
maven項目引入:
<dependency>
<groupId>cn.eonml</groupId>
<artifactId>freemarker-excel</artifactId>
<version>0.1.6</version>
</dependency>
簡單使用方法: 使用office軟件編寫復雜模板 然后導出為xml 將此xml文件 應用到freemarker模板里 我們將自動使用freemarker渲染數據 並讀取渲染數據過后的xml文件 使用poi將xml數據導出到新的excel文件
簡單實示例: 示例程序:https://github.com/yongjiu8/freemarker-excel-test/tree/master
FreemarkerInput freemarkerInput = new FreemarkerInput();
//設置freemarker模板路徑
freemarkerInput.setTemplateFilePath("/templates");
//模板名字
freemarkerInput.setTemplateName("template.ftl");
//緩存xml路徑
freemarkerInput.setXmlTempFile("/templates/tmp");
//緩存xml名字
freemarkerInput.setFileName("tmpXml");
//設置freemarker模板數據
freemarkerInput.setDataMap(getData());
//導出Excel到輸出流(Excel2003版,xls格式)
FreemarkerUtils.exportImageExcel("templates/success.xls", freemarkerInput);
//導出Excel到輸出流(Excel2007版及以上,xlsx格式)速度快
FreemarkerUtils.exportImageExcelNew("templates/success.xlsx", freemarkerInput);
//導出Excel到瀏覽器(Excel2003版,xls格式)
FreemarkerUtils.exportImageExcel(HttpServletResponse , freemarkerInput);
//導出Excel到瀏覽器(Excel2007版及以上,xlsx格式)速度快
FreemarkerUtils.exportImageExcelNew(HttpServletResponse , freemarkerInput);
簡單使用方法: 使用office軟件編寫復雜模板 然后導出為xml 將此xml文件 應用到freemarker模板里 我們將自動使用freemarker渲染數據 並讀取渲染數據過后的xml文件 使用poi將xml數據導出到新的excel文件