1、下载官网

OpenOffice  下载地址   Apache OpenOffice - Official Download

2、安装启动服务

window环境:

进入openoffice安装目录:/program/
开启服务:cmd命令

soffice -headless -accept=“socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard

Linux环境:

1. 解压缩

tar -xvzf  ***.tar.gz

2.安装openoffice

cd ***/

cd RPMS/

rpm -ivh --force --nodeps *.rpm

方式一样进入安装目录启动服务

一般Linux在/opt/openoffice4下

以后台服务方式启动openoffice

/opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard & 

3、整合Springboot

3.1 pom文件

注:jodconverter 2.2.2版本以下不支持docx等文件类型装换
 JodConverter 下载地址JODConverter - Browse /JODConverter at SourceForge.net

<dependency><groupId>com.artofsolving</groupId><artifactId>jodconverter</artifactId><version>2.2.2</version></dependency><dependency><groupId>org.openoffice</groupId><artifactId>jurt</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.openoffice</groupId><artifactId>ridl</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.openoffice</groupId><artifactId>juh</artifactId><version>4.1.2</version></dependency><dependency><groupId>org.openoffice</groupId><artifactId>unoil</artifactId><version>4.1.2</version></dependency>

3.2、yml配置文件

openOffice:host: 127.0.0.1port: 8100

3.3OpenOfficeUtil工具类

/*** @Description: office转换pdf工具类* @author: djq*/
@Component
@Slf4j
public class OpenOfficeUtil {/*** @Description: office转换pdf* @author: djq* @param file* @param outFile* @return*/public void office2Pdf(File file, File outFile) {// 判断源文件是否存在if (!file.exists()) {log.error("转换源文件不存在!");throw new RuntimeException("转换源文件不存在!");}// 创建连接OpenOfficeConnection connection = null;try {// 远程连接OpenOffice服务log.info("远程连接OpenOffice服务");connection = new SocketOpenOfficeConnection(host, port);connection.connect();// 创建文件转换器DocumentConverter converter = new StreamOpenOfficeDocumentConverter(connection);// 开始转换converter.convert(file, outFile);if (outFile.exists()) {log.info("文件转换成功");} else {log.info(文件转换失败");}} catch (ConnectException e) {e.printStackTrace();log.error("OpenOffice服务启动失败";} finally {if (connection != null) {connection.disconnect();}}}@Value("${openOffice.host}")private  String host;@Value("${openOffice.port}")private  int port;
}

3.4测试文件 日志

写个测试类自动测试,启动测试成功

package com.zgdz.util.controller;import java.io.File;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import com.zgdz.util.util.OpenOfficeUtil;import lombok.extern.slf4j.Slf4j;/*** @Description: test* @author: djq* @date: 2022-04-13 19:03 */
@RestController
@Slf4j
public class OpenOfficeController {@Autowiredprivate OpenOfficeUtil openOfficeUtil;@RequestMapping(value = "/test")public Object testOpenOffice() {String wordpath = "D:\\openOffice测试.docx";String pdfpath = "D:\\openOffice测试.pdf";openOfficeUtil.office2Pdf(new File(wordpath), new File(pdfpath));return true;}
}
2022-04-13 19:02:38.728  INFO 13460 --- [nio-9527-exec-1] com.zgdz.util.util.OpenOfficeUtil        : 远程连接OpenOffice服务
2022-04-13 19:02:38.787  INFO 13460 --- [nio-9527-exec-1] c.a.j.o.c.SocketOpenOfficeConnection     : connected
2022-04-13 19:02:39.538  INFO 13460 --- [nio-9527-exec-1] com.zgdz.util.util.OpenOfficeUtil        :文件转换成功
2022-04-13 19:02:39.539  INFO 13460 --- [nio-9527-exec-1] c.a.j.o.c.SocketOpenOfficeConnection     : disconnected

springboot集成openoffice实现office转PDF在线预览相关推荐

  1. office 文档 在线预览功能实现(word,excel,pdf,ppt等多种格式)——使用https://view.xdocin.com/view 提示文档过期——基础积累

    web实现office文档在线预览功能--基础积累 最近遇到一个需求,就是要实现多种文档链接的在线预览,最简单的方式就是通过window.open(url地址)的方式来实现. 但是如果要求是在一个弹窗 ...

  2. office文档在线预览工具平台选型

    ​​​​​​在线预览原理 文档在线预览说明: 1.业务系统生成文档浏览地址,用户通过终端进行访 2.用户终端访问文档预览资源地址,请求文档解析器,解析器分为私有云和公有云部署,作用是将文档进行解析成x ...

  3. java实现word转pdf在线预览格式

    java实现word转pdf在线预览格式 前段时间的项目里涉及了此功能,调研过一些方案,踩过一些坑,一一总结在此. java转pdf的方案很多,但是很多都要收费,转pdf也有一些格式方面的问题. 方案 ...

  4. asp.net实现word、excel、ppt、pdf在线预览

    引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 直接在浏览器中打开Office文档在页面上的链接.会弹出如下窗口: 优点:主流浏览器都支持. 缺点: ...

  5. [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你

    引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 直接在浏览器中打开Office文档在页面上的链接.会弹出如下窗口: 优点:主流浏览器都支持. 缺点: ...

  6. [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!...

    [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你! 引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 ...

  7. [Asp.net]常见word,excel,ppt,pdf在线预览方案,有图有真相,总有一款适合你!

    引言 之前项目需要,查找了office文档在线预览的解决方案,顺便记录一下,方便以后查询. 方案一 直接在浏览器中打开Office文档在页面上的链接.会弹出如下窗口: 优点:主流浏览器都支持. 缺点: ...

  8. Java 实现word pdf在线预览

    Java 实现word pdf在线预览 最近项目有这个需求,查找了一些资料,在这整理一下. 首先,pdf的文件,浏览器本身支持预览,不需要做什么处理. controller: 简单说下思路:就是利用i ...

  9. office web viewer实现office文档在线预览

    office web viewer实现office文档在线预览 office web viewer官网介绍 若要自行制作 URL,您可使用以下链接,其中 <文档位置> 是文档的 URL. ...

  10. ❤️强烈推荐!Word、Excel、PPT、PDF在线预览解决方案

    大家好,我是锋哥: 平时大伙开发项目的时候,经常遇到业务需求Word.Excel.PPT.PDF在线预览功能: 市面上这方面的解决方案也有一些,不做过多评价.今天主要推荐的是一个特定提前下的永久免费解 ...

最新文章

  1. python比java简单好学-21、PHP和python/JAVA比,哪个更好学?
  2. 第十篇 数据类型总结
  3. 残差网络ResNet
  4. 1076 Wifi密码 (15 分)—PAT (Basic Level) Practice (中文)
  5. lucene 分词实现
  6. 我和老公清北毕业,我能接受自己的孩子读三流学校吗?
  7. 480.滑动窗口中位数
  8. 爬取中国地震网地震数据
  9. php切图工具,前端切图常见技巧
  10. 【IoT】产品组合投资地图:如何将产品战略与执行联系起来?
  11. ftp服务器设置上文件大小,ftp服务器文件上传大小设置
  12. 再谈Spring(一):Bean的作用域
  13. 校招软件测试面试问题总结
  14. 日期横线转为斜线oracle,excel 函数 日期横线格式自动变成斜线 | excle日期显示横线...
  15. (附源码)springboot在线学习网站 毕业设计 751841
  16. 移位运算符(<<、>>和>>>)
  17. 微信运动刷步软件是真的吗?微信运动刷步软件有用吗?
  18. 本科课程模糊综合评价系统设计与实现
  19. python中两个除号连用是什么意思啊_【人人都是Pythoner】——python3中“变革”了的除号...
  20. 物联网系列--整体框架搭建

热门文章

  1. 三大强者效应:鲶鱼效应,鳄鱼效应,鲦鱼效应
  2. 【Leetcode】347. 前 K 个高频元素
  3. 《零边际成本社会》书中的精髓:零边际成本所引发的共享经济,将颠覆资本主义和社会主义。
  4. 统计数组中英文大写字母,小写字母,数字,空格的个数。
  5. otsu阈值分割算法原理_OTSU阈值分割
  6. Electron代码内部签名流程
  7. opencv图像处理及视频处理基本操作
  8. php 缩略图黑图,一睡万年_119 黑图(上) - 小说者
  9. 《金融学》笔记 第七章 商业银行
  10. 2021年P气瓶充装新版试题及P气瓶充装证考试