在SSH2项目中实现使用Freemark导出Word文档
来源:互联网 发布:java访问nas存储空间 编辑:程序博客网 时间:2024/06/06 00:09
最近做OA系统要求导出部门信息的doc文档信息,于是自己用了最简便的方法完成这点。
package com.rocky.oa.util;import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import java.util.HashMap;import java.util.Map;import com.rocky.oa.entity.DepartInfo;import freemarker.template.Configuration;import freemarker.template.DefaultObjectWrapper;import freemarker.template.Template;public class CreatWordUtil { @SuppressWarnings() //String dir(ftl模板文件的位置),String toDir(导出doc放置的位置) public static void creatWordDepartInfo(String dir,String toDir,DepartInfo departInfo) { try { //创建配置实例 Configuration cfg = new Configuration(); cfg.setDefaultEncoding("utf-8"); cfg.setDirectoryForTemplateLoading(new File(dir)); //模板所在的文件夹 cfg.setObjectWrapper(new DefaultObjectWrapper()); //获取模板 /** * 生成模板 * 1、officeWord另存为生成一个xml文件 * 2、把xml改为ftl * 3,把xml编码格式改为GBK * 4,使用${str}代替字符串 * 如果生成的word格式为ANSI,则将ftl模板第一行声明编码改为gbk * */ Template temp = cfg.getTemplate(departinfo.ftl,UTF-8); temp.setEncoding("utf-8"); //创建数据模型 Map root = new HashMap(); root.put(departname", departInfo.getDepartName()); root.put(branchname",departInfo.getBranchInfo().getBranchName() ); root.put(departInfo.getUserInfo().getUserName()); root.put(departInfo.getConnectTelNo().toString()); root.put(departInfo.getConnectMobileTelNo().toString()); root.put(departInfo.getFaxes().toString()); //将模板和数据模型合并生成文件 File docFile = new File(toDir); Writer docout = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(docFile))); temp.process(root, docout); } catch (Exception e) { e.printStackTrace(); } } }public String report() {DepartInfo departInfo = departService.get(id);String path = ServletActionContext.getServletContext().getRealPath("/resource");File file = new File("c://部门信息");if (!file.exists()) {file.mkdirs();}String newPath = "c://部门信息/" + departInfo.getDepartName() + ".doc";CreatWordUtil.creatWordDepartInfo(path, newPath, departInfo);return "relist";}
- 在SSH2项目中实现使用Freemark导出Word文档
- Freemark实现Java导出Word
- java freemark导出word 实现word分页
- 项目中导出word文档
- 在.NET中怎样实现word的文档导入导出
- 在java中使用FreeMark导出数据到excel表格
- freemark 导出文档
- 使用IText实现office Word文档导出
- java中使用freemarker导出word文档
- 使用freemark导出数据到Word(遍历List)
- 使用struts2实现数据库数据导出成word文档(项目当中实际用的)
- 使用freeMark生成word
- ueditor jsp版 在SSH2项目中使用小结
- ftl实现文档WORD导出
- 在zk中运用ireport导出word文档!
- 在 C++ 程序中导出 Word 文档的简易方法
- Freemark在Spring+Struts2中使用
- 使用PowerDesigner导出Word文档
- 数据库连接池和jdbc优化
- 如何手动制作一个可执行的jar檔
- 算法大全
- AD 域 实现 MSCHAPV2 认证
- 在Android设备使用Valgrind检查内存错误
- 在SSH2项目中实现使用Freemark导出Word文档
- 一些网站
- UML学习--第一节
- poj 1158
- linux___FILE__文件操作
- 鸡尾酒排序
- A. Perfect Permutation
- 一个数组里,除了三个数是唯一出现的,其余的都出现偶数个,找出这三个数中的任一个
- uva 1394&poj 3517