在线预览项目kkFileView(二)代码讲解与修改

简介: 在线预览项目kkFileView(二)代码讲解与修改


因为楼主公司业务需求的原因,传入的文件是md5加密后的名称,不带路径名称,所以需要更改源码,以下介绍楼主是如何修改的。

1.确定controller

根据查找确定预览接口 如下

根据图分析,每一种文件都有自己一套解析的流程,我们需要修改这些流程,楼主这里新增了一套接口,为加密使用。(为什么不在原来的接口上修改,因为楼主想保持原接口好用)

image.png

image.png

2.工厂类

这个就是工厂类。根据文件类型确定调用的类(没有修改)

image.png

3.FilePreview接口

可以看到核心接口FilePreview,每种文件的解析方法都集成于FilePreview,所以接口我们也重写了一套

image.png

image.png

4.FilePreview接口的实现

接下来我就就可以在FilePreview接口的实现类中取重写我们的流程了(以上新增的接口都是在原有文件上修改)以下举一个例子,楼主的逻辑是把原文件的后缀名发进来,然后重新拼写下载。

image.png

5.开启拦截

新增接口时,需要新增以下配置,否则访问不到。

image.png

6.打包

打包就会生成我们的jar包了 然后就可以愉快的调用了

image.png

image.png


相关文章
|
2月前
|
前端开发
kkFileView文件预览
kkFileView文件预览
67 2
|
API
【工具推荐】 Obsidian 插件 Obsidian to Flomo 一键同步内容到 Flomo 插件
Obsidian to Flomo 是一款可以一键发送内容到 Flomo 的Obsidian 插件。
700 0
|
10天前
|
移动开发 JavaScript 前端开发
必知的技术知识:JqueryMedia插件使用,解决在线预览及打开PDF文件
必知的技术知识:JqueryMedia插件使用,解决在线预览及打开PDF文件
|
Web App开发
修改chrome插件
背景 例子为:ModHeader插件,顾名思义可以修改request header的插件,官方地址为:https://chrome.google.com/webstore/detail/modheader/idgpnmonknjnojddfkpgkljpfnnfcklj 研发通过新增/修改req...
2877 0
|
2月前
|
JavaScript Java
kkFileView在线文件预览与项目集成
kkFileView在线文件预览与项目集成
|
Java 程序员 Maven
SpringBoot实现服务器PDF文件的下载和预览功能
🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习路线:java自学的学习路线
1028 1
SpringBoot实现服务器PDF文件的下载和预览功能
基于SpringBoot的文件在线预览神器,支持99%的文件在线预览
kkFileView可以用来搭建文件在线预览服务,在Github上已有5.7k+Star。该项目使用流行的SpringBoot搭建,易上手和部署,基本支持主流办公文档的在线预览,如docx、xlsx、pptx、pdf、txt、zip、图片、视频、音频等等。项目特性可以参考下图。
|
Unix Linux Windows
文件/代码 对比工具推荐
WinMerge 【for Windows】 https://winmerge.org/ WinMerge 开源用于Windows的差分和合并工具。WinMerge可以比较文件夹和文件,以便于理解和处理的可视文本格式呈现差异。 支持MicrosoftWindowsXPSP 3或更高版本 处理Windows、Unix和Mac文本文件格式 Unicode支持 选项卡接口
315 0
文件/代码 对比工具推荐
|
XML JSON JavaScript
在线预览项目kkFileView(一)项目搭建与使用
由于项目需要在线预览 开始想自己实现 如上文 但是也想弄一份html格式的 但是格式总是达不到理想 所以使用了 kkFileView
831 1
在线预览项目kkFileView(一)项目搭建与使用
|
存储 Java 测试技术
项目的自述文档(README)模板
翻译自@PurpleBooth 的 README 模板 项目标题 使用一段话简要描述项目内容。 获得开始 这些说明将为您提供一个在你的个人本地计算机上启动和运行的项目副本,以便进行开发和测试。有关如何在实时系统上部署项目的细节,请参阅部署。
3067 0