上班第3天公司要你用SpringBoot实现在线预览所有文件

Java架构师社区

共 2347字,需浏览 5分钟

 · 2022-02-14

关注我们,设为星标,每天7:30不见不散,架构路上与您共享

回复架构师获取资源


大家好,我是架构君,一个会写代码吟诗的架构师。

'javajgs.com';


推荐一个用Spring Boot搭建的文档在线预览解决方案:

kkFileView,一款成熟且开源的文件文档在线预览项目解决方案,对标业内付费产品有【永中office】【office365】【idocv】等,免费!

项目特性

  1. 支持 office, pdf, cad 等办公文档
  2. 支持 txt, xml(渲染), md(渲染), java, php, py, js, css 等所有纯文本
  3. 支持 zip, rar, jar, tar, gzip 等压缩包
  4. 支持 jpg, jpeg, png, gif, tif, tiff 等图片预览(翻转,缩放,镜像)
  5. 使用 spring-boot 开发,预览服务搭建部署非常简便
  6. rest 接口提供服务,跨语言、跨平台特性(java,php,python,go,php,....)都支持,应用接入简单方便
  7. 抽象预览服务接口,方便二次开发,非常方便添加其他类型文件预览支持
  8. 最最重要 Apache 协议开源,代码 pull 下来想干嘛就干嘛

官网及文档

地址:https://kkfileview.keking.cn

在线体验

请善待公共服务,会不定时停用

地址:https://file.keking.cn

项目文档

  1. 详细wiki文档:https://gitee.com/kekingcn/file-online-preview/wikis/pages
  2. 中文文档:https://gitee.com/kekingcn/file-online-preview/blob/master/README.md
  3. English document:https://gitee.com/kekingcn/file-online-preview/blob/master/README.en.md

文档预览效果

1. 文本预览

支持所有类型的文本文档预览, 由于文本文档类型过多,无法全部枚举,默认开启的类型如下:

txt,html,htm,asp,jsp,xml,json,properties,md,gitignore,log,java,py,c,cpp,sql,sh,bat,m,bas,prg,cmd

文本预览效果如下:

2. 图片预览

支持jpg,jpeg,png,gif等图片预览(翻转,缩放,镜像),预览效果如下:

3. word文档预览

支持doc,docx文档预览,word预览有两种模式:一种是每页word转为图片预览,另一种是整个word文档转成pdf,再预览pdf。两种模式的适用场景如下

  • 图片预览:word文件大,前台加载整个pdf过慢
  • pdf预览:内网访问,加载pdf快 图片预览模式预览效果如下:

pdf预览模式预览效果如下:

4. ppt文档预览

支持ppt,pptx文档预览,和word文档一样,有两种预览模式 图片预览模式预览效果如下:

pdf预览模式预览效果如下:

5. pdf文档预览

支持pdf文档预览,和word文档一样,有两种预览模式

图片预览模式预览效果如下:

pdf预览模式预览效果如下:

6. excel文档预览

支持xls,xlsx文档预览,预览效果如下:

7. 压缩文件预览

支持zip,rar,jar,tar,gzip等压缩包,预览效果如下:

可点击压缩包中的文件名,直接预览文件,预览效果如下:

8. 多媒体文件预览

理论上支持所有的视频、音频文件,由于无法枚举所有文件格式,默认开启的类型如下:

mp3,wav,mp4,flv

视频预览效果如下:

音频预览效果如下:

9. CAD文档预览

支持CAD dwg文档预览,和word文档一样,有两种预览模式

图片预览模式预览效果如下:

pdf预览模式预览效果如下:

考虑说明篇幅原因,就不贴其他格式文件的预览效果了,感兴趣的可以参考下面的实例搭建下。

使用

项目使用技术:

  • spring boot:spring boot开发参考指南
  • freemarker
  • redisson
  • jodconverter

依赖外部环境:

  • redis (可选,默认不用)
  • OpenOffice 或者 LibreOffice( Windows 下已内置,Linux 脚本启动模式会自动安装,Mac OS 下需要手动安装)
  1. 第一步:pull 项目 https://github.com/kekingcn/file-online-preview.git

  2. 第二步:运行 ServerMain 的 main 方法,服务启动后,访问 http://localhost:8012/ 会看到如下界面,代表服务启动成功


到此文章就结束了。Java架构师必看一个集公众号、小程序、网站(3合1的文章平台,给您架构路上一臂之力,javajgs.com)。如果今天的文章对你在进阶架构师的路上有新的启发和进步,欢迎转发给更多人。欢迎加入架构师社区技术交流群,众多大咖带你进阶架构师,在后台回复“加群”即可入群。



这些年小编给你分享过的干货


1.idea永久激活码(亲测可用)

2.优质ERP系统带进销存财务生产功能(附源码)

3.优质SpringBoot带工作流管理项目(附源码)

4.最好用的OA系统,拿来即用(附源码)

5.SBoot+Vue外卖系统前后端都有(附源码

6.SBoot+Vue可视化大屏拖拽项目(附源码)



转发在看就是最大的支持❤️

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报