Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

README.md 9.4 KiB

7 anos atrás
10 anos atrás
7 anos atrás
10 anos atrás
7 anos atrás
7 anos atrás
9 anos atrás
7 anos atrás
9 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
7 anos atrás
10 anos atrás
10 anos atrás
10 anos atrás
10 anos atrás
10 anos atrás
7 anos atrás
10 anos atrás
10 anos atrás
7 anos atrás
10 anos atrás
10 anos atrás
7 anos atrás
10 anos atrás
10 anos atrás
7 anos atrás
10 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás
9 anos atrás
6 anos atrás
6 anos atrás
6 anos atrás
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. EasyPoi Excel和 Word简易工具类
  2. ===========================
  3. easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员
  4. 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板
  5. 语言(熟悉的表达式语法),完成以前复杂的写法
  6. 官网: http://www.afterturn.cn/
  7. 邮箱: qrb.jueyue@foxmail.com
  8. QQ群: 1群 364192721(满) 2 群116844390
  9. 开发者:魔幻之翼 xf.key@163.com
  10. Spring Boot 支持 https://gitee.com/lemur/easypoi-spring-boot-starter
  11. [官网](http://www.afterturn.cn/)
  12. [VIP技术服务](https://lemur.taobao.com)
  13. 提供一年的技术支持服务
  14. 提供10次内的1V1服务,限1小时
  15. 提供升级指导
  16. 针对lemur提供的所有开源项目提供支持服务
  17. **开发指南**
  18. **[http://www.afterturn.cn/doc/easypoi.html](http://www.afterturn.cn/doc/easypoi.html)**
  19. [用户征集](https://gitee.com/lemur/easypoi/issues/IFDX7)
  20. 版本介绍
  21. [history.md](https://gitee.com/lemur/easypoi/blob/master/history.md)
  22. 基础示例
  23. [basedemo.md](https://gitee.com/lemur/easypoi/blob/master/basedemo.md)
  24. [测试项目](http://git.oschina.net/lemur/easypoi-test): http://git.oschina.net/lemur/easypoi-test
  25. **!!! 3.0 版本开始全新包名和GROUPID cn.afterturn**
  26. ---------------------------
  27. EasyPoi的主要特点
  28. --------------------------
  29. 1.设计精巧,使用简单
  30. 2.接口丰富,扩展简单
  31. 3.默认值多,write less do more
  32. 4.AbstractView 支持,web导出可以简单明了
  33. ---------------------------
  34. EasyPoi的几个入口工具类
  35. ---------------------------
  36. 1.ExcelExportUtil Excel导出(
  37. 普通导出,模板导出)
  38. 2.ExcelImportUtil Excel导入
  39. 3.WordExportUtil Word导出(只支持docx ,doc版本poi存在图片的bug,暂不支持)
  40. ---------------------------
  41. 关于Excel导出XLS和XLSX区别
  42. ---------------------------
  43. 1.导出时间XLS比XLSX快2-3倍
  44. 2.导出大小XLS是XLSX的2-3倍或者更多
  45. 3.导出需要综合网速和本地速度做考虑^~^
  46. ---------------------------
  47. 几个工程的说明
  48. ---------------------------
  49. 1.easypoi 父包--作用大家都懂得
  50. 2.easypoi-annotation 基础注解包,作用与实体对象上,拆分后方便maven多工程的依赖管理
  51. 3.easypoi-base 导入导出的工具包,可以完成Excel导出,导入,Word的导出,Excel的导出功能
  52. 4.easypoi-web 耦合了spring-mvc 基于AbstractView,极大的简化spring-mvc下的导出功能
  53. 5.sax 导入使用xercesImpl这个包(这个包可能造成奇怪的问题哈),word导出使用poi-scratchpad,都作为可选包了
  54. --------------------------
  55. maven
  56. --------------------------
  57. maven库应该都可以了
  58. SNAPSHOT 版本-很少发布
  59. https://oss.sonatype.org/content/groups/public/
  60. ```xml
  61. <dependency>
  62. <groupId>cn.afterturn</groupId>
  63. <artifactId>easypoi-base</artifactId>
  64. <version>3.1.0</version>
  65. </dependency>
  66. <dependency>
  67. <groupId>cn.afterturn</groupId>
  68. <artifactId>easypoi-web</artifactId>
  69. <version>3.1.0</version>
  70. </dependency>
  71. <dependency>
  72. <groupId>cn.afterturn</groupId>
  73. <artifactId>easypoi-annotation</artifactId>
  74. <version>3.1.0</version>
  75. </dependency>
  76. ```
  77. --------------------------
  78. pom说明
  79. --------------------------
  80. word和sax读取的时候才使用,就不是必须的了,请手动引用,JSR303的校验也是可选的,PDF的jar也是可选的
  81. ```xml
  82. <!-- sax 读取时候用到的 -->
  83. <dependency>
  84. <groupId>xerces</groupId>
  85. <artifactId>xercesImpl</artifactId>
  86. <version>${xerces.version}</version>
  87. <optional>true</optional>
  88. </dependency>
  89. <dependency>
  90. <groupId>org.apache.poi</groupId>
  91. <artifactId>poi-scratchpad</artifactId>
  92. <version>${poi.version}</version>
  93. <optional>true</optional>
  94. </dependency>
  95. <!-- Word 需要使用 -->
  96. <dependency>
  97. <groupId>org.apache.poi</groupId>
  98. <artifactId>ooxml-schemas</artifactId>
  99. <version>1.3</version>
  100. <optional>true</optional>
  101. </dependency>
  102. <!-- 校验,下面两个实现 -->
  103. <dependency>
  104. <groupId>org.hibernate</groupId>
  105. <artifactId>hibernate-validator</artifactId>
  106. <version>5.1.3.Final</version>
  107. <optional>true</optional>
  108. </dependency>
  109. <dependency>
  110. <groupId>org.apache.bval</groupId>
  111. <artifactId>org.apache.bval.bundle</artifactId>
  112. <version>1.1.0</version>
  113. </dependency>
  114. <!-- PDF -->
  115. <dependency>
  116. <groupId>com.itextpdf</groupId>
  117. <artifactId>itextpdf</artifactId>
  118. <version>5.5.6</version>
  119. <optional>true</optional>
  120. </dependency>
  121. <dependency>
  122. <groupId>com.itextpdf</groupId>
  123. <artifactId>itext-asian</artifactId>
  124. <version>5.2.0</version>
  125. <optional>true</optional>
  126. </dependency>
  127. ```
  128. -----------------
  129. Test 测试覆盖率
  130. ----------------
  131. |包|类|方法|行|
  132. |----|----|----|----|
  133. cn|100% (0/0)|100% (0/0)|100% (0/0)
  134. cn.afterturn|100% (0/0)|100% (0/0)|100% (0/0)
  135. cn.afterturn.easypoi|0% (0/1)|0% (0/1)|0% (0/3)
  136. cn.afterturn.easypoi.cache|100% (6/6)|83% (10/12)|60% (40/66)
  137. cn.afterturn.easypoi.cache.manager|100% (3/3)|62% (5/8)|54% (29/53)
  138. cn.afterturn.easypoi.configuration|0% (0/2)|0% (0/1)|0% (0/5)
  139. cn.afterturn.easypoi.entity|100% (1/1)|83% (15/18)|66% (26/39)
  140. cn.afterturn.easypoi.entity.vo|100% (0/0)|100% (0/0)|100% (0/0)
  141. cn.afterturn.easypoi.excel|100% (3/3)|73% (19/26)|59% (44/74)
  142. cn.afterturn.easypoi.excel.annotation|100% (0/0)|100% (0/0)|100% (0/0)
  143. cn.afterturn.easypoi.excel.entity|83% (5/6)|66% (85/127)|63% (185/290)
  144. cn.afterturn.easypoi.excel.entity.enmus|100% (3/3)|88% (8/9)|92% (13/14)
  145. cn.afterturn.easypoi.excel.entity.params|100% (6/6)|84% (94/111)|75% (160/211)
  146. cn.afterturn.easypoi.excel.entity.result|100% (2/2)|76% (16/21)|65% (26/40)
  147. cn.afterturn.easypoi.excel.entity.sax|100% (1/1)|33% (2/6)|45% (5/11)
  148. cn.afterturn.easypoi.excel.entity.vo|100% (1/1)|100% (1/1)|100% (3/3)
  149. cn.afterturn.easypoi.excel.export|100% (2/2)|94% (17/18)|84% (202/238)
  150. cn.afterturn.easypoi.excel.export.base|100% (2/2)|97% (33/34)|88% (353/399)
  151. cn.afterturn.easypoi.excel.export.styler|100% (4/4)|86% (19/22)|97% (122/125)
  152. cn.afterturn.easypoi.excel.export.template|100% (3/3)|95% (43/45)|92% (422/457)
  153. cn.afterturn.easypoi.excel.graph|100% (0/0)|100% (0/0)|100% (0/0)
  154. cn.afterturn.easypoi.excel.graph.builder|0% (0/1)|0% (0/8)|0% (0/92)
  155. cn.afterturn.easypoi.excel.graph.constant|100% (0/0)|100% (0/0)|100% (0/0)
  156. cn.afterturn.easypoi.excel.graph.entity|0% (0/3)|0% (0/26)|0% (0/49)
  157. cn.afterturn.easypoi.excel.html|100% (2/2)|92% (24/26)|84% (242/287)
  158. cn.afterturn.easypoi.excel.html.css|100% (2/2)|100% (10/10)|94% (166/175)
  159. cn.afterturn.easypoi.excel.html.css.impl|100% (6/6)|60% (9/15)|74% (111/149)
  160. cn.afterturn.easypoi.excel.html.entity|100% (0/0)|100% (0/0)|100% (0/0)
  161. cn.afterturn.easypoi.excel.html.entity.style|100% (3/3)|100% (53/53)|100% (87/87)
  162. cn.afterturn.easypoi.excel.html.helper|80% (4/5)|77% (24/31)|67% (154/228)
  163. cn.afterturn.easypoi.excel.imports|100% (2/2)|92% (26/28)|79% (361/454)
  164. cn.afterturn.easypoi.excel.imports.base|100% (1/1)|100% (9/9)|89% (102/114)
  165. cn.afterturn.easypoi.excel.imports.sax|100% (2/2)|100% (8/8)|70% (56/80)
  166. cn.afterturn.easypoi.excel.imports.sax.parse|100% (1/1)|77% (7/9)|58% (44/75)
  167. cn.afterturn.easypoi.exception|100% (0/0)|100% (0/0)|100% (0/0)
  168. cn.afterturn.easypoi.exception.excel|50% (1/2)|20% (3/15)|18% (6/32)
  169. cn.afterturn.easypoi.exception.excel.enums|50% (1/2)|44% (4/9)|40% (9/22)
  170. cn.afterturn.easypoi.exception.word|0% (0/1)|0% (0/3)|0% (0/6)
  171. cn.afterturn.easypoi.exception.word.enmus|0% (0/1)|0% (0/4)|0% (0/10)
  172. cn.afterturn.easypoi.handler|100% (0/0)|100% (0/0)|100% (0/0)
  173. cn.afterturn.easypoi.handler.impl|100% (1/1)|33% (2/6)|44% (4/9)
  174. cn.afterturn.easypoi.handler.inter|100% (0/0)|100% (0/0)|100% (0/0)
  175. cn.afterturn.easypoi.hanlder|0% (0/1)|0% (0/1)|0% (0/17)
  176. cn.afterturn.easypoi.pdf|100% (1/1)|50% (1/2)|33% (1/3)
  177. cn.afterturn.easypoi.pdf.entity|100% (1/1)|52% (10/19)|47% (17/36)
  178. cn.afterturn.easypoi.pdf.export|100% (1/1)|100% (14/14)|85% (131/153)
  179. cn.afterturn.easypoi.pdf.styler|100% (1/1)|100% (4/4)|56% (9/16)
  180. cn.afterturn.easypoi.test|100% (0/0)|100% (0/0)|100% (0/0)
  181. cn.afterturn.easypoi.test.en|100% (3/3)|93% (15/16)|93% (31/33)
  182. cn.afterturn.easypoi.test.entity|91% (11/12)|50% (62/122)|57% (117/202)
  183. cn.afterturn.easypoi.test.entity.check|100% (2/2)|50% (8/16)|69% (18/26)
  184. cn.afterturn.easypoi.test.entity.groupname|75% (3/4)|46% (25/54)|52% (48/92)
  185. cn.afterturn.easypoi.test.entity.img|100% (1/1)|100% (8/8)|100% (16/16)
  186. cn.afterturn.easypoi.test.entity.samename|100% (1/1)|100% (6/6)|100% (10/10)
  187. cn.afterturn.easypoi.test.entity.statistics|100% (1/1)|100% (12/12)|100% (19/19)
  188. cn.afterturn.easypoi.test.entity.temp|80% (4/5)|94% (32/34)|38% (52/134)
  189. cn.afterturn.easypoi.test.web|100% (0/0)|100% (0/0)|100% (0/0)
  190. cn.afterturn.easypoi.test.web.cfg|0% (0/1)|0% (0/1)|0% (0/4)
  191. cn.afterturn.easypoi.tohtml|0% (0/1)|0% (0/4)|0% (0/13)
  192. cn.afterturn.easypoi.util|100% (11/11)|85% (84/98)|73% (668/908)
  193. cn.afterturn.easypoi.view|0% (0/13)|0% (0/27)|0% (0/376)
  194. cn.afterturn.easypoi.word|100% (1/1)|33% (1/3)|20% (1/5)
  195. cn.afterturn.easypoi.word.entity|100% (2/2)|44% (4/9)|45% (27/60)
  196. cn.afterturn.easypoi.word.entity.params|50% (1/2)|22% (5/22)|14% (8/56)
  197. cn.afterturn.easypoi.word.parse|100% (1/1)|91% (11/12)|94% (97/103)
  198. cn.afterturn.easypoi.word.parse.excel|100% (2/2)|90% (10/11)|70% (95/135)