Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Spring Boot如何实现在线预览?这个开源项目可以学习一下,支持99%常用文件!

Spring Boot如何实现在线预览?这个开源项目可以学习一下,支持99%常用文件!

作者头像
程序猿DD
发布于 2023-04-04 05:44:08
发布于 2023-04-04 05:44:08
1.4K0
举报
文章被收录于专栏:程序猿DD程序猿DD

Spring Boot上传文件,相信你一定会了。如果还不会的小伙伴,可以先看看之前的分享:

文件上传实现之后,通常最常见的另外两个操作就是下载和预览,下载只需要知道地址,就简单搞定了,那么预览怎么做?你知道吗?

今天小编就来推荐一个用Spring Boot搭建的文档在线预览解决方案:

kkFileView,一款成熟且开源的文件文档在线预览项目解决方案,如果你用过类似如永中officeoffice365idocv这些付钱产品,你一定会喜欢kkFileView,因为在功能满足的前提下,谁还喜欢付费呢?

kkFileView有12大特性:

12大特性

  • 支持word excel ppt,pdf等办公文档
  • 支持txt,java,php,py,md,js,css等所有纯文本
  • 支持zip,rar,jar,tar,gzip等压缩包
  • 支持jpg,jpeg,png,gif等图片预览(翻转,缩放,镜像)
  • 支持mp3,mp4,flv等多媒体文件预览
  • 使用spring boot开发,预览服务搭建部署非常简便
  • rest接口提供服务,跨平台特性(java,php,python,go,php,....)都支持,应用接入简单方便
  • 支持普通http/https文件下载url、http/https文件下载流url、ftp下载url等多种预览源
  • 提供zip,tar.gz发行包,提供一键启动脚本和丰富的配置项,方便部署使用
  • 提供Docker镜像发行包,方便在容器环境部署
  • 抽象预览服务接口,方便二次开发,非常方便添加其他类型文件预览支持
  • 最最重要Apache协议开源,代码pull下来想干嘛就干嘛

对于kkFileView来说,最重要的就是实际展示的效果,小编找了一个之前中秋节用来存放小孩子画画用的图片的word文件,看看在线预览的实际效果:

和实际打开的没啥区别~不错不错

我们再看看其它一些文件的预览效果:

文本预览

支持所有类型的文本文档预览, 由于文本文档类型过多,无法全部枚举,默认开启的类型如下 txt,html,htm,asp,jsp,xml,json,properties,md,gitignore,log,java,py,c,cpp,sql,sh,bat,m,bas,prg,cmd

文本预览效果如下

文档预览

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

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

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

pdf预览模式预览效果如下

2、支持ppt,pptx文档预览,和word文档一样,有两种预览模式

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

pdf预览模式预览效果如下

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

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

pdf预览模式预览效果如下

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

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

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

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

如有没有未覆盖全面,可通过配置文件指定多媒体类型

视频预览效果如下

音频预览效果如下

作者最近一次更新版本是在7月,发布了4.00版本,完成了8项优化:

  • 底层集成OpenOffice替换为LibreOffice,Office文件兼容性增强,预览效果提升
  • 修复压缩文件目录穿越漏洞
  • 修复PPT预览使用PDF模式无效
  • 修复PPT图片预览模式前端显示异常
  • 新增功能:首页文件上传功能可通过配置实时开启或禁用
  • 优化增加Office进程关闭日志
  • 优化Windows环境下,查找Office组件逻辑(内置的LibreOffice优先)
  • 优化启动Office进程改同步执行

目前项目支持windows、linux、mac等多个平台,可以下载发行版,解压之后,运行bin目录下的startup.bat命令安装即可。

当然资深玩家可以拉源码自行编译~

要提醒的是,需要更改配置文件的话,只需修改config目录下的application.properties文件即可~

好了,想体验在线预览的小伙伴,赶紧排队上车啦~

点击下方卡片,关注公众号“TJ君

回复“在线预览”,获取仓库地址

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序猿DD 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Spring Boot 实现万能文件在线预览,已开源,真香!!
地址:https://gitee.com/kekingcn/file-online-preview
开源日记
2023/03/10
6700
Spring Boot 实现万能文件在线预览,已开源,真香!!
SpringBoot 实现万能文件在线预览
推荐一个用 Spring Boot 搭建的文档在线预览解决方案:kkFileView,一款成熟且开源的文件文档在线预览项目解决方案,对标业内付费产品有永中office、office365、idocv等,免费!
程序员小猿
2021/12/06
1K0
SpringBoot 实现万能文件在线预览
万能在线预览 kkFileView v4.2.0 正式发布
kkFileView 自 2017 年开源至今,已经支持 23 种文件类型,上百种文件后缀的文件在线预览。已在 Gitee 收获 17.2K 、Github 收获 8.2K star, 我们一直在精心打磨 kkFileView ,旨在打造开源里最好用最强大的文件在线预览项目。
kl博主
2023/04/13
4.3K0
万能文件在线预览项目,开源!
大家好,我是鱼皮,今天分享一个优秀的、100% 开源、持续更新的项目,拿来学习或者作为项目经历写在简历上都很不错。
程序员鱼皮
2021/05/19
3K0
Spring Boot搭建的一个在线文件预览系统!支持ppt、doc等多种类型文件预览
总的来说我觉得 kkFileView 是一个非常棒的开源项目,在线文件预览这个需求非常常见。感谢开源!
Guide哥
2020/10/30
6.8K0
Spring Boot搭建的一个在线文件预览系统!支持ppt、doc等多种类型文件预览
基于SpringBoot的文件在线预览神器,可支持99%常用文件的在线预览!
kkFileView可以用来搭建文件在线预览服务,在Github上已有5.7k+Star。该项目使用流行的SpringBoot搭建,易上手和部署,基本支持主流办公文档的在线预览,如docx、xlsx、pptx、pdf、txt、zip、图片、视频、音频等等。项目特性可以参考下图。
macrozheng
2021/08/20
2.1K0
零压力部署:构建你的文档在线预览项目-kkFileView
PS:https://curl.qcloud.com/rnuXqlNU 这里可以挑选最新活动机,便宜实惠。
快乐的小白
2024/03/02
1.5K0
零压力部署:构建你的文档在线预览项目-kkFileView
Office文件转换预览解决方案
http://wordupload.xhkjedu.com/resource/ce77495a0a64477b8c894289156810cc/5887f1ab75344117bff4fe6830d5b2ee.ppt
码客说
2020/06/18
3.4K0
OpenSource - 文件在线预览模块(多格式转 PDF 文件)
本地启动后访问页面地址为:http://localhost:8301/index
小小工匠
2024/05/25
2920
OpenSource - 文件在线预览模块(多格式转 PDF 文件)
腾讯轻量+宝塔搭建文档在线预览项目kkFileView
【腾讯云】轻量应用服务器Lighthouse,「轻」松上云!1核2G6M 限时低至74元/年起!
小陈先生1998
2021/12/09
1.5K0
SpringBoot:kkFileView万能文件在线预览(已开源)
在之前的文章中,我们使用MinIO实现了文件存储,用于存储各种格式的文件。有时候我们不仅需要文件存储,还需要文件的在线预览。这里给大家推荐一个基于SpringBoot的文件预览神器kkFileView,基本支持主流文件的在线预览,使用也很简单,希望对大家有所帮助!
Freedom123
2024/03/29
5.2K0
SpringBoot:kkFileView万能文件在线预览(已开源)
文件预览——一路躺过来的那些坑
因为最近项目比较紧,所以dubbo源码系列是顾不上了。 恰巧这周花了几天在做文件预览这块,两三天的时间下来,有过一些走弯路的经验教训(准确说,全都是弯路),在这里给大家分享下~ 背景 基于产品需求,需要支持文件预览的功能。顾名思义,要支持类似word、excel、TXT、PDF等格式文件的在线预览。 业界对于文件预览功能的实现也是各显神通。大体主要分为两种,一种是自主研发,另外就是购买成熟预览服务提供商的服务。 既然说到躺坑,那自然是属于第一种自主研发的情况。 自主研发主要还是借用现有的软件和类库组合,加上
JackieZheng
2018/04/16
4K3
文件预览——一路躺过来的那些坑
开源文档预览项目 kkFileView (9.9k star) ,快速入门
kkFileView 是一款文件文档在线预览解决方案,采用流行的 Spring Boot 框架构建,易于上手和部署。
勇哥java实战
2024/05/01
7680
kkFileView在线文件预览项目学习&搭建
在偶然的翻阅大佬博客的时候,发现一个挺有意思的项目:kkFileView,在线文件预览项目
不愿意做鱼的小鲸鱼
2022/09/26
6K0
kkFileView在线文件预览项目学习&搭建
基于开源方案构建统一的文件在线预览与office协同编辑平台的架构与实现历程
在构建业务系统的时候,经常会涉及到对附件的支持,继而又会引申出对附件在线预览、在线编辑、多人协同编辑等种种能力的诉求。
是Vzn呀
2022/09/14
3.7K1
基于开源方案构建统一的文件在线预览与office协同编辑平台的架构与实现历程
Vue实现在线文档预览
本次实现的文档预览的类型有:docx, xlsx, pptx, pdf,以及纯文本、代码文件和各种图片、视频格式的在线预览
不愿意做鱼的小鲸鱼
2023/07/09
4.2K0
Vue实现在线文档预览
Open Source - 在线Office方案
Luckysheet : https://gitee.com/mengshukeji/Luckysheet
小小工匠
2022/05/01
3K0
Open Source - 在线Office方案
kkFileView文件上传导致远程代码执行漏洞
Keking kkFileView是中国凯京科技(Keking)公司的一个 Spring-Boot 打造文件文档在线预览项目。kkFileViewv4.2.0至v4.4.0-beta版本之间存在安全漏洞,该漏洞源于组件CompressFilePreviewImpl#filePreviewHandle存在zipslip漏洞,允许攻击者通过将精心制作的zip压缩包来覆盖任意文件,进而造成RCE危害。
Timeline Sec
2024/04/30
5.1K0
kkFileView文件上传导致远程代码执行漏洞
SpringBoot实现文件在线预览
最近公司内部oa系统升级,需要增加文件在线预览服务,最常见的文件就是office文档,一开始构思几个方案,比如office软件自带的文件转换,openoffice转换,offce365服务,aspose组件转换,最终采用了aspose转换,原因是组件功能完善,不依赖其它软件安装环境
code2roc
2023/07/19
6430
SpringBoot实现文件在线预览
N/A|kkFileView 任意文件上传导致远程代码执行漏洞(POC)
kkFileView为文件文档在线预览解决方案,该项目使用流行的spring boot搭建,易上手和部署,基本支持主流办公文档的在线预览,如doc,docx,xls,xlsx,ppt,pptx,pdf,txt,zip,rar,图片,视频,音频等。
信安百科
2024/04/22
2.3K0
N/A|kkFileView 任意文件上传导致远程代码执行漏洞(POC)
推荐阅读
相关推荐
Spring Boot 实现万能文件在线预览,已开源,真香!!
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档