您的位置 首页 java

开源一个基于SpringBoot的文档上传、转换、预览项目

前言

总有小伙伴问,有没有文档管理的功能模块给参考一下。恰好,撸主之前做过文档预览的案例,怎么说呢,这是个伤感的话题,撸主的案例随着前公司的破产倒闭随风而去了。

撸主一点都不慌,凭着模糊的印象,一晚撸了一个简单的文档管理模块,的确是简单了那么一丢丢,但是不影响体验,后面会慢慢优化,直到大家足够满意。

开肝

话不多说,先上图。

功能提供了文档上传、后台转换、前台下载、前台预览功能,小伙伴们可以上传 Excel、Word、Pdf文档,后台会默认转为Pdf文档,并可以在前台预览显示。目前只支持PC端预览,后期会配合前端插件实现多端预览。

转换

系统后台使用了开源的 openoffice 作为转换组件,国外的网站真是卡巴斯基,撸主花了好久找到了 W 和 L 下的安装包,由于文件太大,已经共享在QQ群。

配置 pom .xml 引入:

 properties>
    <openoffice.version>4.1.2</openoffice.version>
    <jod convert er.version>4.3.0</jodconverter.version>
    < project . build .sourceEncoding>UTF-8</project.build.sourceEncoding>
    < java .version>1.8</java.version>
</properties>
<!-- openoffice  -->
<dependency>
    <groupId> org .openoffice</groupId>
    <artifactId>unoil</artifactId>
    <version>${openoffice.version}</version>
</dependency>
<dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>ridl</artifactId>
    <version>${openoffice.version}</version>
</dependency>
<dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>jurt</artifactId>
    <version>${openoffice.version}</version>
</dependency>
<dependency>
    <groupId>org.openoffice</groupId>
    <artifactId>juh</artifactId>
    <version>${openoffice.version}</version>
</dependency>
<dependency>
    <groupId>org.jodconverter</groupId>
    <artifactId>jodconverter-local</artifactId>
    <version>${jodconverter.version}</version>
</dependency>
<dependency>
    <groupId>org.jodconverter</groupId>
    <artifactId>jodconverter-core</artifactId>
    <version>${jodconverter.version}</version>
</dependency>
<dependency>
    <groupId>org.jodconverter</groupId>
    <artifactId>jodconverter-spring-boot-starter</artifactId>
    <version>${jodconverter.version}</version>
</dependency>  

配置 application.properties 引入:

 # 
jodconverter.local.enabled=true
# 设置openOffice主目录 可省略 默认会自动读取系统安装路径
jodconverter.local.office-home=C:/Program Files (x86)/OpenOffice 4
# 开启多个openOffice进程,每个端口对应一个进程
jodconverter.local.portNumbers=8100,8200
# openOffice进程重启前的最大进程数
jodconverter.local.maxTasksPerProcess=100  

我们只需要在使用中的地方引入以下代码:

 @ Resource 
private DocumentConverter documentConverter;  

调用API:

 documentConverter.convert(fromFile).to(toFile).execute();  

小结

由于前期整合了 工作流 ,数据库上线到演示环境又各种大小写区分的问题,某 云数据 库面板又卡的要死,捯饬了半天,终于搞定了,深夜又撸了一点简单的部署文档,实在是肝不动了。

文章来源:智云一二三科技

文章标题:开源一个基于SpringBoot的文档上传、转换、预览项目

文章地址:https://www.zhihuclub.com/182475.shtml

关于作者: 智云科技

热门文章

网站地图