Java基于XML+FreeMarker导出Word
来源:互联网 发布:剑灵人女捏脸数据下载 编辑:程序博客网 时间:2024/06/04 18:13
使用方法:
1、先用word制作模版,参数使用freemarker的写法 ${xxx} 暂时只支持这一种
2、然后将word另存为xml
3、再将xml拷贝一份,后缀名改为ftl
4、freemarker解析ftl输出word
public class WordExportAction extends AbstractAction {private Configuration configuration = null;private Template template = null;// 模版private void init(String filename, String templatePath) throws Exception {response.setContentType("application/msword;charset=UTF-8");response.setHeader("Content-Disposition", "inline;filename="+ java.net.URLEncoder.encode(filename, "UTF-8"));// 客户端不缓存response.addHeader("Pargam", "no-cache");response.addHeader("Cache-Control", "no-cache");configuration = new Configuration();configuration.setDefaultEncoding("utf-8");String templateName = templatePath.substring(templatePath.lastIndexOf("\\"));String templateRoot = templatePath.substring(0, templatePath.lastIndexOf("\\"));// 设置模本装置方法和路径,FreeMarker支持多种模板装载方法。可以重servlet,classpath,数据库装载,configuration.setDirectoryForTemplateLoading(new File(templateRoot));template = configuration.getTemplate(templateName);template.setEncoding("utf-8");// 指定模板如何检索数据模型,这是一个高级的主题了…// 但先可以这么来用:configuration.setObjectWrapper(new DefaultObjectWrapper());}/** * 导出word * @param filename 导出的文件名 * @param dataMap 参数集合 * @param templatePath 模版路径 * @throws Exception */public void export(String filename, Map dataMap, String templatePath)throws Exception {// 初始化init(filename, templatePath);//执行导出template.process(dataMap, response.getWriter());}}
测试action
public class ExportWordTestAction extends WordExportAction{public String doExport() throws Exception{Map dataMap = new HashMap();// 在根中放入字符串"user"dataMap.put("dept", "研发部");dataMap.put("code", "r$d");dataMap.put("date", "2013-3-3");dataMap.put("addr", "天府软件园");String templatePath = "jsp/demosys/reports/word/test.ftl";export("03月27日常州03-⊥-C50停电申请单.doc",dataMap,templatePath);return null;}}
- Java基于XML+FreeMarker导出Word
- freemarkerExportWord.java freemarker+xml导出Word文档
- java使用Freemarker+xml导出word
- FreeMarker + xml 导出word
- FreeMarker + xml 导出word
- FreeMarker + xml 导出word
- JAVA FreeMarker导出word
- java导出word(Freemarker)
- freemarkerExportWord.java 用freemarker+xml导出word文档
- Java用freemarker导出word
- Java用freemarker导出word
- Java用freemarker导出word
- Java用freemarker导出word
- Java用freemarker导出word
- Java用freemarker导出word
- java用freemarker导出word
- Java用freemarker导出word
- Java用freemarker导出word
- 开发小技巧:jQuery处理自适应内容高度的iframe
- php计算月份差
- android开发环境配置
- 在列表中添加值后,无法检索出来
- 关于cisco日志的配置
- Java基于XML+FreeMarker导出Word
- 从摄像头获得图片并存储感兴趣区变化大的图片
- php按照单词截取子串
- 模拟器可以使用PC的串口
- 计算某个文件夹所占的磁盘空间大小
- 【算法学习】线性时间排序-计数排序、基数排序和桶排序详解与编程实现
- Android ListView理解,BaseAdapter,ListView 的adapter用法和理解
- Struts2请求处理流程
- 浙大计算机研究生复试上机考试-2010年