springboot2中怎么实现在线文档预览
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,springboot2中怎么实现在线文档预览,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。第一步,需要引入相应的jar: org.jodconverter jodconverter-core 4.2.2 org.jodconverter jodconverter-spring-boot-starter 4.2.2 org.jodconverter jodconverter-local 4.2.2
第二步,在配置文件中加入关键配置:
第三步:核心类
package com.yunji.kwxt.document;import com.yunji.kwxt.common.enums.ResultEnum;import com.yunji.kwxt.common.model.ResultJson;import org.apache.commons.io.IOUtils;import org.jodconverter.DocumentConverter;import org.jodconverter.office.OfficeException;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;import javax.annotation.Resource;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServletResponse;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;/** * @author :LX * 创建时间: 2019/11/4. 17:42 * 地点:广州 * 目的: 在线文档预览 * * 总的来说,这部分的代码是可以使用的,但是效果并没有预期的好,第一,中文乱码问题没解决,第二,格式并没有预期的好。 * 业务逻辑这一块,不推荐这么弄,建议从源头控制上传文件,然后来预览操作。 * * 如果后续需要使用,1 放开maven中的 jodconverter 包 * 2 将 application-config.properties 文件相应 jodconverter 的配置放开 * 3 将该类下面的 view 方法放开,调用 view 即可。 * * 备注说明: */@Controller@RequestMapping("/doc")public class DocumentController { private static Logger log = LoggerFactory.getLogger(DocumentController.class); @Resource private DocumentConverter documentConverter; /** * 在线预览 * @param response * @return */ @RequestMapping(value = "/view", method = RequestMethod.GET) @ResponseBody public ResultJson view(HttpServletResponse response){ //需要转换的文件 File file = new File("E:\\下载\\kd.xlsx"); //文件转换后的地址 File toFile = new File("E:\\temp"); if (!toFile.exists()){ toFile.mkdirs(); } ServletOutputStream outputStream = null; InputStream in = null; //关键方法,转换为PDF try { documentConverter.convert(file).to(new File("E:/temp/1.pdf")).execute(); outputStream = response.getOutputStream(); in = new FileInputStream(new File("E:/temp/1.pdf")); //将文件转换复制到流 IOUtils.copy(in, outputStream); } catch (OfficeException e) { e.printStackTrace(); log.error("转换文件失败"); } catch (IOException e) { e.printStackTrace(); log.error("获取流失败"); } finally { if (in != null){ try { in.close(); } catch (IOException e) { e.printStackTrace(); } } if (outputStream != null){ try { outputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } return new ResultJson(null, ResultEnum.SUCCESS.getStatus(), "成功", null); }}看完上述内容,你们掌握springboot2中怎么实现在线文档预览的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
文件
在线
方法
文档
问题
配置
关键
内容
更多
成功
束手无策
为此
业务
乱码
代码
原因
地址
地点
备注
对此
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发的就业前景和行业背景
网络技术工程师入门到精通
服务器python脚本查看编码
软件开发审核价格
公安网络安全员是什么
嵌入式软件开发完整教程
数据库质疑数据源
陕西手机软件开发
网络技术方向论文
衡水快报网络安全审查办法开启
税务局用什么数据库软件
有关手机网络安全的保证书
财务数据库类型是什么意思
java 管理服务器
双生幻想不同服务器加好友吗
成华区源的网络技术工作室
软件开发如何避免人员流失
7K软件开发零基础培训
河北网络安全知识技能培训班
oracle服务器安全整改
互联网大厦科技城
实验技能数据库
计算机网络技术专业高考怎么录取
工控行业网络安全
2018学什么网络技术最火
网络安全管理职责和流程
沭阳多功能网络技术厂家价格
自定义锁 数据库
冗余性好的关系数据库
抗疫网络安全