老板让你给 OA 加在线预览。

你打开需求一看:docx、xlsx、pptx、pdf、cad、xmind、bpmn……光找前端渲染库就够喝一壶:docx-preview、SheetJS、PDFObject、xmind-embed-viewer、cad-simple-viewer……每个库 API、样式、依赖都不同,拼起来就是一锅大杂烩。

自己造轮子,迟早爆胎

坑一:格式爆炸。 业务扩张,新格式不断涌入,bpmn、3D 模型、csv 每来一种就要写一套集成。

坑二:Office 绕不开 LibreOffice 或 OnlyOffice。 装环境、配字体、解决中文乱码、高可用——部署一个 docx 转 pdf 服务,运维要写三天文档。

坑三:前端拼接散落各处。 缩放、下载、UI 风格难统一,体验割裂。

是时候换思路了。

一个开箱即用的方案

File View 是一款 Spring Boot 文件预览 Starter 组件。一行 Maven 依赖,项目立即支持 20+ 文件格式 的在线预览:Office、PDF、图片、视频、音频、Markdown、代码、3D 模型、CAD、BPMN、思维导图、压缩包。

它不仅"能看",还好用:

  • 零配置:跑起服务,访问 /file/view 就有完整的上传+预览 UI,支持拖拽上传
  • 下载顺手:每个预览页内置悬浮下载按钮
  • 无后端转换:大部分格式走纯前端渲染,Office 走 docx-preview / SheetJS / pptxviewjs

真正能打的,是扩展能力

两个扩展接口,撑起所有定制:

  • IView —— 自定义渲染器。README 给出 OnlyOffice 接入完整示例,几行代码就能让 Office 走协作编辑
  • IFileStorage —— 换存储后端,MinIO / OSS / FastDFS 都能轻松接入

默认支持鉴权:IAuth 接口提供 API Token 和 BFF 重定向两种模式。

五行代码跑起来

<dependency>
    <groupId>io.github.wb04307201</groupId>
    <artifactId>file-view-spring-boot-starter</artifactId>
    <version>1.4.2</version>
</dependency>

启动,访问 http://localhost:8080/file/view,拖一个 docx 进去。

适合谁用?

文档管理、知识库、电商附件、BPMN 协作、设计成果展示——任何受够了自己找库、拼 UI、部署转码服务的 Java 团队。

🔗 GitHub:https://github.com/wb04307201/file-view
🔗 Gitee:https://gitee.com/wb04307201/file-view
📦 Maven Central 已发布,搜 file-view-spring-boot-starter

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐