分享一个超牛逼的 Java 文件在线预览项目
Java研发军团
共 2526字,需浏览 6分钟
·
2021-03-11 11:44
简介
内置功能
文件上传功能
文件转换功能
文件预览功能
远程文件预览功能
代码集成
# 默认不开启 需要开启的设置成true
jodconverter.local.enabled=true
# 开启多个openOffice进程,每个端口对应一个进程
jodconverter.local.portNumbers=8100,8200
# openOffice进程重启前的最大进程数
jodconverter.local.maxTasksPerProcess=100
@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;
/**
* 实时转换
*/
logger.info("开始转换pdf......");
File toFile = new File(parentFile, uuid + ".pdf");
documentConverter.convert(docFile).to(toFile).execute();
logger.info("开始转换html......");
toFile = new File(parentFile, uuid + ".html");
converter( docFile,toFile);
return Result.ok(imagePath);
} else {
return Result.error();
}
} catch (Exception e) {
logger.error("转换异常{}",e);
return Result.error();
}
}
}
软件截图
![null](https://filescdn.proginn.com/6b44f4be9b5d3912e9e9afbabc2bcd63/9756c9709ce7aeed9687647cf0483454.webp)
![null](https://filescdn.proginn.com/797621a9926e0cbe6aa1cb5b9e631ac7/7ccb71c9d7c5c52be1d8cba8c65fb4b4.webp)
![null](https://filescdn.proginn.com/976c714687b492c24393024781e39c20/368680599f9d274d984f816fad9fc72b.webp)
![](https://filescdn.proginn.com/fe0117ba521305b7c388c6bec85aa305/ce5bab5631a00b87127b929164d8ae08.webp)
![null](https://filescdn.proginn.com/b74ccc42b5cf884bbe0c368a82acb044/72bd99ef083ec7ff78b514721ecb02bd.webp)
![null](https://filescdn.proginn.com/7c5e4884f3769a5ac937559716b3a60a/83f50d22fb465cc2eb60565049a6ae86.webp)
![null](https://filescdn.proginn.com/9b1af0699f2f4232a15948bd6e0a3359/a7538ca327166b751b2a5e9db61e55c6.webp)
小结
源码
END
顺便给大家推荐一个GitHub项目,这个 GitHub 整理了上千本常用技术PDF,绝大部分核心的技术书籍都可以在这里找到,
GitHub地址:https://github.com/javadevbooks/books
Gitee地址:https://gitee.com/javadevbooks/books
电子书已经更新好了,你们需要的可以自行下载了,记得点一个star,持续更新中..
评论