分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目Java高效學(xué)習(xí)關(guān)注共 2342字,需瀏覽 5分鐘 ·2021-03-19 11:14 ??簡介基于 OpenOffice 服務(wù)將文件 (.doc、.docx、.xls、.ppt) 轉(zhuǎn)化為pdf、html格式,然后直接在瀏覽器渲染輸出。內(nèi)置功能文件上傳功能文件轉(zhuǎn)換功能文件預(yù)覽功能遠(yuǎn)程文件預(yù)覽功能代碼集成基于 SpringBoot + OpenOffice 實(shí)現(xiàn)的項(xiàng)目案例,配置文件 application.properties 引入:# 默認(rèn)不開啟 需要開啟的設(shè)置成truejodconverter.local.enabled=true# 開啟多個openOffice進(jìn)程,每個端口對應(yīng)一個進(jìn)程jodconverter.local.portNumbers=8100,8200# openOffice進(jìn)程重啟前的最大進(jìn)程數(shù)jodconverter.local.maxTasksPerProcess=100項(xiàng)目啟動會自動生成兩個轉(zhuǎn)換進(jìn)程,下面是偽代碼實(shí)現(xiàn):@RestController@RequestMapping("document")public class ConverterController { @Autowired private DocumentConverter documentConverter; /** * 文件上傳 */ @RequestMapping("/upload") public Result upload(MultipartFile file) { try { if (file != null) { File parentFile = createParentFile(); String fileName = file.getOriginalFilename(); String suffix = fileName.substring(fileName.lastIndexOf(".")); String uuid = IdUtil.simpleUUID(); fileName = uuid + suffix; File docFile = new File(parentFile, fileName); FileUtil.writeFromStream(file.getInputStream(), docFile); /** * 年月日目錄 */ String fileDay = DateUtil.thisYear() + "/" + (DateUtil.thisMonth() + 1) + "/" + DateUtil.thisDayOfMonth(); String imagePath = SystemConstant.FILE + "/document/" + fileDay + "/" + fileName; /** * 實(shí)時轉(zhuǎn)換 */ logger.info("開始轉(zhuǎn)換pdf......"); File toFile = new File(parentFile, uuid + ".pdf"); documentConverter.convert(docFile).to(toFile).execute(); logger.info("開始轉(zhuǎn)換html......"); toFile = new File(parentFile, uuid + ".html"); converter( docFile,toFile); return Result.ok(imagePath); } else { return Result.error(); } } catch (Exception e) { logger.error("轉(zhuǎn)換異常{}",e); return Result.error(); } }}軟件截圖小結(jié)網(wǎng)上很多文章,Java 集成 OpenOffice 已經(jīng)老得不能再老了,在 Linux 下還有各種啟動問題,本案例只需要在系統(tǒng)中安裝好相關(guān)服務(wù),程序啟動會自動生成 OpenOffice 進(jìn)程。源碼源碼地址:https://gitee.com/52itstyle/SPTools演示地址:https://tools.cloudbed.vip賬號密碼:admin admin2020點(diǎn)擊關(guān)注公眾號↑↑ 瀏覽 39點(diǎn)贊 評論 收藏 分享 手機(jī)掃一掃分享分享 舉報 評論圖片表情視頻評價全部評論推薦 分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目程序員私房菜0分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目Java開發(fā)寶典0分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目JAVA葵花寶典0分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目Java研發(fā)軍團(tuán)0分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目Java項(xiàng)目開發(fā)0分享一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目架構(gòu)真經(jīng)0一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目Java項(xiàng)目開發(fā)0一個超牛逼的 Java 文件在線預(yù)覽項(xiàng)目程序員閃充寶0SpringBoot實(shí)現(xiàn)萬能文件在線預(yù)覽開源項(xiàng)目,真香!??!星標(biāo)▲Java學(xué)習(xí)之道▲一起成長,一起學(xué)習(xí)~哈嘍,大家好,我是阿淼。今天推薦一個用Spring Boot搭建的文檔在線預(yù)覽解決方案:kkFileView,一款成熟且開源的文件文檔在線預(yù)覽項(xiàng)目解決方案,對標(biāo)業(yè)內(nèi)付費(fèi)產(chǎn)品有【永中offi...kkFileViewSpring Boot 構(gòu)建 Excel 文件在線預(yù)覽項(xiàng)目方案此項(xiàng)目為文件文檔在線預(yù)覽項(xiàng)目解決方案,對標(biāo)業(yè)內(nèi)付費(fèi)產(chǎn)品有【永中office】【office365】【idocv】等,在取得公司高層同意后以Apache協(xié)議開源出來反哺社區(qū),在此特別感謝@唐老大的支持以點(diǎn)贊 評論 收藏 分享 手機(jī)掃一掃分享分享 舉報