Spring Boot搭建的一个在线文件预览系统
昨晚搭建环境都花了好一会时间 , 主要在浪费在了安装 OpenOffice 这个依赖环境上(Mac 需要手动安装) 。
然后 , 又一步一步功能演示 , 记录 , 调试项目 , 并且简单研究了一下核心代码之后才把这篇文章写完 。 因此 , 这篇文章我还会简单分析一下项目核心代码 。
项目介绍官方是这样介绍 kkFileView 的:
kkFileView 是使用 spring boot 打造文件文档在线预览项目解决方案 , 支持 doc、docx、ppt、pptx、xls、xlsx、zip、rar、mp4、mp3 以及众多类文本如 txt、html、xml、java、properties、sql、js、md、json、conf、ini、vue、php、py、bat、gitignore 等文件在线预览
简单来说 kkFileView 就是常见的文件类型的在线预览解决方案 。
总的来说我觉得 kkFileView 是一个非常棒的开源项目 , 在线文件预览这个需求非常常见 。 感谢开源!
下面 ,我站在一个“上帝”的角度从多个维度来评价一下 kkFileView:
- 代码质量一般 , 有很多可以优化的地方比如:
- Controller 层代码嵌套太多逻辑
- 没有进行全局异常处理(代码中是直接返回错误信息的 json 数据给前端 , 我并不推荐这样做)
- 返回值不需要通过ObjectMapper转换为 JSON 格式(ResponseEntity+@RestController 就行了)
- ......
- 使用的公司比较多 , 说明项目整体功能还是比较稳定和成熟的!
- 代码整体逻辑还是比较清晰的 , 比较容易看懂 , 给作者们点个赞!
【Spring Boot搭建的一个在线文件预览系统】
git clone
安装 Openofficeoffice 类型的文件的预览依赖了 OpenOffice, 所以我们首先要安装 OpenOffice(Windows 下已内置 , Linux 会自动安装 , Mac OS 下需要手动安装) 。下面演示一下如何在 Mac 上安装 OpenOffice 。
你可以通过以下命令安装最新版的 OpenOffice:
brew cask install openoffice
不过 , 这种方式下载可能会比较慢 , 你可以直接去官网下载 dmg 安装包 。官方下载地址:
文章插图
很多小伙伴就要问了:OpenOffice 是什么呢?
OpenOffice 是 Apache 旗下的一款开源免费的文字处理软件 , 支持 Windows、Liunx、OS X 等主流操作系统 。
OpenOffice 和 Windows 下 office 办公软件有点类似 , 不过其实开源免费的 。
文章插图
启动项目运行FilePreviewApplication的 main 方法 , 服务启动后 , 访问http://localhost:8012/ 会看到如下界面 , 代表服务启动成功 。
文章插图
使用我们首先上传了 3 个不同的类型的文件来分别演示一下图片、PDF、Word 文档的预览 。
文章插图
图片的预览kkFileView 支持 jpg , jpeg , png , gif 等多种格式图片的预览 , 还包括了翻转 , 缩放图片等操作 。
图片的预览效果如下 。
文章插图
Word 文档的预览kkFileView 支持 doc , docx 文档预览 。
另外 , 根据 Word 大小以及网速问题 ,Word 预览提供了两种模式:
- 每页 Word 转为图片预览
- 整个 Word 文档转成 PDF , 再预览 PDF 。
推荐阅读
- 基于Spring+Angular9+MySQL开发平台
- Bootlin致力于为32位ARM NAS设备提供超过16TiB的存储支持
- 36氪首发 | 与传统外包战事打响,无代码应用搭建平台「黑帕云」完成数千万元 Pre-A 轮融资
- 别不拿GateWay当回事,SpringCloud告诉你错了
- web 安全之 Spring Security 入门教程
- Spring Application实例化流程和构造方法参数
- 一张架构图告诉你数据中台如何搭建
- SpringBoot常用注解
- 一文教你如何搭建http游戏服务器
- 阿里爆款SpringBoot项目实战PDF+源码+视频分享