freemarker 导出word
来源:互联网 发布:其 犹 橐 龠 乎 。 编辑:程序博客网 时间:2024/06/05 08:10
学习的几篇文章:
使用Freemarker生成Word :http://my.oschina.net/liweigov/blog/63868
《ava freemarker(xml模板) 导出word 》 http://xustar.iteye.com/blog/1284104
我的问题:
1、导出IO流不熟悉
2、尝试过直接写word,格式太难控制
Map<String, Object> graduationCertificateInfo = statisticsDao.graduationCertificateInfo(idaos, params);if(graduationCertificateInfo.size()>0){}String studentName = (String) graduationCertificateInfo.get("studentName");String sex = (String) graduationCertificateInfo.get("sex");String specialty = (String) graduationCertificateInfo.get("specialty");BigDecimal requiredCredits = (BigDecimal) graduationCertificateInfo.get("requiredCredits");BigDecimal selectCredits = (BigDecimal) graduationCertificateInfo.get("selectCredits");BigDecimal totalScore = (BigDecimal) graduationCertificateInfo.get("totalScore");SimpleDateFormat sft = new SimpleDateFormat("yyyy年MM月dd日");sft.format(new Date()); XWPFDocument doc = new XWPFDocument(); // 标题 XWPFParagraph paragraph1 = doc.createParagraph(); paragraph1.setWordWrap(true); paragraph1.setPageBreak(true); //换页 //p3.setAlignment(ParagraphAlignment.DISTRIBUTE); // 设置字体对齐方式 paragraph1.setAlignment(ParagraphAlignment.CENTER); paragraph1.setSpacingLineRule(LineSpacingRule.EXACT); paragraph1.setIndentationFirstLine(600); // title要使用paragraph1所定义的属性 XWPFRun title = paragraph1.createRun(); title.setBold(true);//加粗 title.setFontSize(26); title.setTextPosition(-10); // 设置上下两行之间的间距 title.setTextPosition(20); title.setText("素质拓展证书"); title.addCarriageReturn(); // 设置证书正文 XWPFParagraph paragraph2 = doc.createParagraph(); paragraph2.setAlignment(ParagraphAlignment.LEFT); XWPFRun r2 = paragraph2.createRun(); r2.setFontSize(22); r2.setTextPosition(-10); r2.setTextPosition(20); r2.setText(" "+studentName+""); r2.setUnderline(UnderlinePatterns.SINGLE);// r2.setUnderline(); r2.setText(",性别"+sex+","+specialty+"专业" + "级学生,完成“综合素质教育”计划的学习,修满" + "必修学分"+requiredCredits+",选修学分"+selectCredits+",成绩"+totalScore+",特发" + "此证。"); r2.addBreak(); // 设置证书正文 XWPFParagraph paragraph3 = doc.createParagraph(); paragraph3.setAlignment(ParagraphAlignment.LEFT); XWPFRun r3 = paragraph3.createRun(); r3.setFontSize(22); r3.setText("证书编号:12345678989"); r3.addBreak(); // 设置证书正文 XWPFParagraph paragraph4 = doc.createParagraph(); paragraph4.setAlignment(ParagraphAlignment.RIGHT); XWPFRun r4 = paragraph4.createRun(); r4.setFontSize(22); r4.setText(sft.format(new Date())); r2.addBreak(BreakClear.ALL); String filename = "活动成绩详情.doc";OutputStream outStream = TempFileUtil.instanse().createFile(filename); doc.write(outStream); Map<String, Object> result = new HashMap<String, Object>();result.put("path", "temp");result.put("filename", filename);return result;
3、xml格式乱了会打不开生成的word(注意〈〉和</>对称)
0 0
- 使用freemarker 导出word
- FreeMarker + xml 导出word
- FreeMarker + xml 导出word
- freemarker 导出word
- FreeMarker 导出word步骤
- 使用FreeMarker导出Word
- FreeMarker + xml 导出word
- 使用freemarker导出Word
- 使用freemarker导出Word
- freemarker 导出word
- 使用 freemarker 导出 word
- 使用freemarker导出word
- JAVA FreeMarker导出word
- java导出word(Freemarker)
- Freemarker导出Word文件
- FreeMarker导出word
- FreeMarker实现Word导出
- freemarker导出word示例
- 交叉工具链的安装与使用
- POJ训练计划3083_Children of the Candy Corn(BFS+DFS+回溯)
- Hibernate命名参数和Query的分页查询
- Android_Servlet验证的简单登录程序
- 【基本综述】综合概述
- freemarker 导出word
- vs2010 vc6 编译体积优化
- Linux学习记录--有名管道通信
- OpenCV 直方图计算函数 calcHist源码深度剖析
- 将HTML5封装成android应用APK文件若干方法
- 在架构bootloader是遇到的错误
- 嵌入式 start_kernel函数详解
- VTK学习笔记:数据集之多边形数据集
- Java 理论与实践: JDK 5.0 中更灵活、更具可伸缩性的锁定机制