资源简介
该代码提供了word、excel、pdf三种类型的文档生成方案,其中word文档使用“freemarker + xml + 模板”技术;excel使用“POI + 模板”技术;pdf使用“freemarker + itext + flying saucer”技术
代码片段和文件信息
package com.eastop.document;
import java.util.HashMap;
import java.util.Map;
import com.eastop.document.doc.DocGenerator;
import com.eastop.document.utils.DateUtils;
import com.eastop.document.utils.PropertiesUtils;
/**
* doc格式生成策略
*
* @author DELL
*
*/
public class DocReportStrategy implements ReportStrategy {
@Override
public String generateReport(object datas) {
// TODO doc文件生成过程
// 1. templatePath
String docTemplatePath = PropertiesUtils.getValue(“doc-template“);
// 2.docPath
String docPath = getDocPath();
// 3.dataModel
Mapject> dataModel = initDataModel(datas);
// 4.生成doc文件
DocGenerator doc = new DocGenerator();
doc.export(docTemplatePath docPath dataModel);
return docPath;
}
/**
* 处理数据格式,以符合map类型
*
* @param datas
* @return map类型的数据
*/
@SuppressWarnings(“unchecked“)
private Mapject> initDataModel(object datas) {
Mapject> dataMap = new HashMapject>();
if (datas instanceof Map) {
dataMap = (Mapject>) datas;
} else {
// TODO 作格式转换处理
}
return dataMap;
}
/**
* 获取doc文档路径
*
* @return
*/
private String getDocPath() {
StringBuilder sb = new StringBuilder();
sb.append(PropertiesUtils.getValue(“baseDir“));// 基路径
sb.append(PropertiesUtils.getValue(“doc-destination“));
String currentDate = DateUtils.formatDate(DateUtils.getDate());
currentDate = currentDate.replaceAll(“-“ “/“);
sb.append(currentDate).append(“/“);
// 文件名
sb.append(System.currentTimeMillis()).append(“.doc“);
return sb.toString();
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1313 2018-05-07 10:45 document-demo\.classpath
文件 1089 2018-05-07 10:45 document-demo\.project
目录 0 2018-05-07 10:45 document-demo\.settings\
文件 639 2018-05-07 10:39 document-demo\.settings\.jsdtscope
文件 93 2018-05-07 10:45 document-demo\.settings\org.eclipse.core.resources.prefs
文件 430 2018-05-07 10:45 document-demo\.settings\org.eclipse.jdt.core.prefs
文件 90 2018-05-07 10:39 document-demo\.settings\org.eclipse.m2e.core.prefs
文件 764 2018-05-07 10:45 document-demo\.settings\org.eclipse.wst.common.component
文件 252 2018-05-07 10:45 document-demo\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2018-05-07 10:39 document-demo\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2018-05-07 10:39 document-demo\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 50 2018-05-07 10:39 document-demo\.settings\org.eclipse.wst.validation.prefs
文件 2690 2018-05-07 13:46 document-demo\pom.xm
目录 0 2018-05-07 10:45 document-demo\src\
目录 0 2018-05-07 10:45 document-demo\src\main\
目录 0 2018-05-07 10:45 document-demo\src\main\java\
目录 0 2018-05-07 10:45 document-demo\src\main\java\com\
目录 0 2018-05-07 10:45 document-demo\src\main\java\com\eastop\
目录 0 2018-05-07 11:12 document-demo\src\main\java\com\eastop\document\
目录 0 2018-05-07 11:12 document-demo\src\main\java\com\eastop\document\constant\
文件 313 2018-05-07 11:12 document-demo\src\main\java\com\eastop\document\constant\DocumentTypeConsts.java
目录 0 2018-05-07 10:59 document-demo\src\main\java\com\eastop\document\doc\
文件 593 2018-05-07 11:02 document-demo\src\main\java\com\eastop\document\doc\DocGenerator.java
文件 1760 2018-05-07 13:49 document-demo\src\main\java\com\eastop\document\DocReportStrategy.java
目录 0 2018-05-07 10:59 document-demo\src\main\java\com\eastop\document\excel\
文件 8340 2018-05-07 11:02 document-demo\src\main\java\com\eastop\document\excel\ExcelGenerator.java
文件 3602 2018-05-07 14:13 document-demo\src\main\java\com\eastop\document\ExcelReportStrategy.java
目录 0 2018-05-07 10:59 document-demo\src\main\java\com\eastop\document\pdf\
文件 4002 2018-05-07 11:02 document-demo\src\main\java\com\eastop\document\pdf\PdfGenerator.java
文件 1765 2018-05-07 13:48 document-demo\src\main\java\com\eastop\document\PdfReportStrategy.java
文件 655 2018-05-07 10:59 document-demo\src\main\java\com\eastop\document\ReportContext.java
............此处省略80个文件信息
相关资源
- 《最强Android书架构大剖析》_崔孝晨
- Android 经典项目开发实战
- 《Java 基础入门(传智播客出品)》
- Java语言程序设计-基础篇(原书第8版
- Android项目实战——博学谷PDF+源码.z
- [Android应用案例开发大全].吴亚峰等
- Xamarin.Android 入门(官网)中文文档
- 企业级JavaEE架构设计精深实践教程p
- Effective Java 中文版原书第3版.[美]Jos
- 实战Java虚拟机.pdf
- Java从入门到精通(魔乐科技)高清
- JAVA项目开发案例全程实录第2版.pdf
- java核心技术第九版 高清完整PDF+源代
- Java 7并发编程实战手册 pdf全本
- 12-第一行代码Android第2版-郭霖-人邮
- 《Java核心技术 卷1 基础知识原书第
- HeadFirst系列之:深入浅出Rails中文版高
- 大型网站系统与java中间件实践pdf 高清
- java调用openOffice转换office为pdf的jar包
- 《实战Java高并发程序设计》高清完整
- Java程序员面试笔试真题与解析.猿媛之
- Java安全编码标准-PDF版-有目录
- 钟世礼-深入解析ANDROID虚拟机(带书签
- 《OpenCV Android开发实战》_贾志刚.pdf
- Head First Java 第二版.中文高清完整版
- Qt Quick核心编程.安晓辉(带详细书签
- Java经典编程300例-高清PDF,带超详细书
- Android开发艺术探索 pdf 高清完整版版
- java web从入门到精通 pdf高清中文版
- Tomcat与Java Web开发技术详解(第2版)
评论
共有 条评论