Spring Boot + kkFileView-2.1.2 实现文档在线预览

1. 下载kkFileview:https://gitee.com/kekingcn/file-online-preview/releases

2. 启动服务

  进入 bin 目录,双击 startup.bat 启动服务

3. 访问 http://127.0.0.1:8012 测试是否成功启动服务

4. 设置 Spring Boot 内置 tomcat 虚拟映射

@Configuration
public class WebConfig implements WebMvcConfigurer {

    /**
     * 虚拟路径配置
     * @param registry
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/upload/**").addResourceLocations("file:F:/tomcat-upload/");
    }
}

5. 编写测试代码

<!-- 从数据库中获取的预览文件的虚拟路径 -->
<
input type="hidden" th:value="${staticPath}" id="staticPath"/> <button type="button" onclick="kkFileview();"/>点击预览
/**
 * kkFileview 在线预览文档
 */
function kkFileview() {
    var url = $("#staticPath").val();
    var kkFileUrl = "http://localhost:8080/lcsin-blog"+url;  //拼接预览文件的url
    window.open('http://127.0.0.1:8012/onlinePreview?url='+encodeURIComponent(kkFileUrl));  //交由kkFileview实现在线预览
}

6. 预览效果

使用图片预览效果

使用PDF预览效果

 遇到的一些问题:

1. 管理员运行startup.bat 一闪而过,但服务未成功启动的。

 解决方法:通过在cmd下编译bin目录里的kkFileView-2.1.2.jar成功启动服务,之后发现直接双击startup.bat 即可,无须以管理员身份运行

2. 预览页面报错,或者预览文件不存

问题原因:未正确传入接口参数或者预览文件的url拼接不正确导入传入的接口参数有误,应该传入预览文件的tomcat虚拟路径

传入的预览文件参数应该类似于:http://localhost:8080/项目名/预览文件的tomcat虚拟路径

其他问题可以在log目录下阅览kkFileView.log日志文件查看错误信息

 

  

原文地址:https://www.cnblogs.com/lcsin/p/11708784.html