public static void main(String[] args) {
//模板文档路径
String filePath = "D:/DOC/template.docx";
String res = String.valueOf(new Date().getTime());
//生成文档路径
String outFile = "D:/DOC/插入值后文档" + res + ".docx";
try {
GeneralTemplateTool gtt = new GeneralTemplateTool();
Map<String, Object> params = new HashMap<String, Object>();
//创建替代模板里段落中如${title}值开始
params.put("title","标题文字 by Stephen" );
params.put("Tab1Title","表一");
params.put("Tab2Title","表二");
//......对应模板扩展
//创建替代模板里段落中如${title}值结束
//创建替代&生成模板里tab1标识的表格中的值开始
List<Map<String,String>> tab1list = new ArrayList<Map<String,String>>();
for (int i = 1; i <= 3; i++) {
Map<String, String> map = new HashMap<String, String>();
map.put("name", "张" + i);
map.put("age", "1" + i);
map.put("sex", "男");
map.put("job", "职业"+i);
map.put("hobby", "爱好"+i);
map.put("phone", "1312365322"+i);
tab1list.add(map);
}
params.put("tab1", tab1list);
//创建替代&生成模板里tab1标识的表格中的值结束
//创建替代&生成模板里tab2标识的表格中的值开始
List<Map<String,String>> tab2list = new ArrayList<Map<String,String>>();
for (int i = 1; i <= 3; i++) {
Map<String, String> map = new HashMap<String, String>();
map.put("name", "王" + i);
map.put("age", "1" + i);
map.put("sex", "女");
map.put("job", "职业"+i);
tab2list.add(map);
}
params.put("tab2", tab2list);
//创建替代&生成模板里tab2标识的表格中的值结束
//创建替代&生成模板里tab3标识的表格中的值开始
List<Map<String,String>> tab3list = new ArrayList<Map<String,String>>();
for (int i = 1; i <= 4; i++) {
Map<String, String> map = new HashMap<String, String>();
map.put("a", "a列值" + i);
map.put("b", "b列值" + i);
map.put("c", "c列值" + i);
tab3list.add(map);
}
params.put("tab3", tab3list);
//创建替代&生成模板里tab3标识的表格中的值结束
//......对应模板扩展
gtt.templateWrite(filePath, outFile, params);
System.out.println("生成模板成功");
System.out.println(outFile);
} catch (Exception e) {
System.out.println("生成模板失败");
e.printStackTrace();
}
}