Springboot + vue 实现导出word
后端代码
-
使用word先创建好已知的模板
-
使用word工具另存为.xml格式的文件
-
使用freemarker ftl模板
将修改后的xml文件复制到开发工具中,将文件后缀修改为ftl文件,并且将里面的动态值使用${}包裹例如:${zyjn} -
word工具类
/***
*
* Project Name:maventest
* <p>生成word工具类<br>
*
* @ClassName: WordUtil
*
* @author zyl
* @version 1.0
* @since
* @see
*/
public class WordUtil {
// 字符编码格式
private static String charsetCode = "utf-8";
private Configuration configuration = null;
/****
* 模板文件存放的目录
*/
private static final String baseDir = "E:\\oracle\\demo - pdf中文问题\\src\\main\\resources\\freemaker";
// private static final String baseDir = "/home/ruoyi/flt";
/***
* 模板文件名称
*/
private static final String templateFile = "mobanjianli.ftl";
/***
* word生成的输出目录
*/
private static final String outputDir = "E:\\oracle\\";
public WordUtil(){
configuration = new Configuration();
configuration.setDefaultEncoding("UTF-8");
}
/*****
*
* Project Name: maventest
* <p>转换成word<br>
* @version v1.0
* @since
*/
public void createWord(HttpServletResponse resp, HttpServletRequest req) throws IOException, BadElementException {
Map<String,Object> dataMap=new HashMap<String,Object>();
//构造参数
getData(dataMap);
configuration.setClassForTemplateLoading(this.getClass(), "");//模板文件所在路径
Template t=null;