-
Notifications
You must be signed in to change notification settings - Fork 1
/
nohi-doc.note
84 lines (61 loc) · 3.19 KB
/
nohi-doc.note
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
nohi-doc
create by NOHI
20130207
===================================================
目的:
项目中经常用到文档的导入导出。方便开发、提高开发效率
功能:
1,excel模板的导入
2,excel导出数据到模板
3,导出数据到pdf模板中
原理:
利用xml文件配置,Java实体的属性与Excel中单元格的位置对应,实现值的传递。
技术:
Java反射、Xml文件解析、POI操作EXCEL、iText操作Pdf文件
edit by nohi 20171128
========================================================================================
说明:
所有的配置基于XML,感觉配置过于麻烦。
几年前闲着无聊写的,最近项目中用到,修改了部分,支持xlsx的导入。
支持合并单元格导入...
此工程bug多多,谨慎使用,如有建议/意见,欢迎指导(虽然不一定能听进去...)
这次说明主要为了学习github使用。简单说明
基本功能参见test/java/nohi/doc/下excel pdf 中的测试类
主要配置:
========================================================================================
doc.properties classpath下必需的主配置属性文件
appConf=nohi-doc.xml 主文档配置文件
encodeConf=docconf/nohi_encode_conf.xml 数据字典码值映射文件
nohi-doc.xml
store-file节点配置需要修改为本地临时存放的目录。
导出时,需要生成文件,返回目录路径,此目录为临时存放目录。
ftp-server 最初设置支持ftp文件服务器。目前可忽略
doc-excel excel配置
doc-pdf pdf配置
EXCEL
==================================================================================================================
导入:
DocVO doc = new DocVO();
doc.setDocId("TEST_IMPORT"); //对应 主文档配置文件nohi-doc.xml中 <doc id="TEST_IMPORT" ..>
doc.setDocType("EXCEL"); //文件类型
File file = new File(filePath); //导入源文件路径
TestDocVO vo = (TestDocVO)docService.importFromFile(doc, file); //返回对象
//返回对象
<document id="TEST_IMPORT" name="测试Excel"
data="nohi.doc.excel.vo.TestDocVO"
docType="EXCEL"
>
导出:
配置内容同导入
DocVO doc = new DocVO();
doc.setDocId("TEST");
doc.setDocType("EXCEL");
doc.setRepeatSheet(DocConsts.EXCEL_SHEET_REPEAT); // 重复生成EXCEL SHEET
支持导出多个sheet, 比如,导出模板中为公司基本信息,有十家需要导出,导出的excel中会用十个sheet页。
datavo.setSheetName("测试sheet_" + re + "abc"); //指定sheet名称
pdf
==================================================================================================================
pdf只支持导出
pdf模板需要adobe acrobat编辑pdf,里面增加text的编辑域什么的.
此功能相对单一,模板固定,无法自动扩展列表条数,列表如果很多,无法显示全部。
建议如果需要,可以jsp或者其它工具,html2pdf.不要使用此功能。