首页 > 编程语言 >java集成onlyoffice实现文档在线预览编辑

java集成onlyoffice实现文档在线预览编辑

时间:2024-08-08 10:57:07浏览次数:15  
标签:COMMENT java 预览 DEFAULT ONLYOFFICE 文档 NULL onlyoffice

一、onlyoffice是什么

ONLYOFFICE是一款由Ascensio System SIA公司开发的在线办公软件套件,它提供了文档编辑、电子表格、演示文稿和表单等多种办公工具,旨在提高团队协作效率和文档处理的便捷性。以下是关于ONLYOFFICE的详细介绍:

1、软件概述

  • 名称:ONLYOFFICE文档(英文名ONLYOFFICE Docs)
  • 开发商:Ascensio System SIA
  • 软件授权:免费软件(部分高级功能可能需付费)
  • 软件平台:支持Windows、Linux、MacOS、Android、iOS等多平台
  • 软件版本:不断更新中,如8.1版本等

2、主要功能

  1. 文档编辑:支持DOCX、ODT、TXT、HTML等多种格式的文档编辑,提供丰富的格式化工具集,包括字体和样式管理、文本格式化、页眉页脚插入等。
  2. 电子表格:支持XLSX、XLS、ODS和CSV等格式的电子表格文件,提供400多个函数和公式,支持数据透视表、条件格式化等功能,便于数据处理和分析。
  3. 演示文稿:支持PPTX、ODP等格式的演示文稿编辑,提供动画效果、视频和音频插入等功能,使演示更加生动。
  4. 表单创建:支持创建可填写的表单,方便数据收集和整理。
  5. PDF查看与编辑:内置PDF查看器和编辑器,支持注释、表单填写、评论和绘图等功能。

3、在线协作功能

  • 实时协同编辑:允许多个用户同时在线编辑同一文档,支持自动保存和版本控制,确保协作的顺畅和数据的安全。
  • 权限设置:提供多种访问权限设置,如全访问、审阅、评论、阅读等,满足不同场景下的协作需求。
  • 内置聊天工具:在文档界面内置聊天工具,方便用户实时沟通,提高协作效率。
  • 音视频通话:支持通过第三方插件(如Jitsi、Rainbow)进行音视频通话,进一步增强团队协作能力。

4、安全性与兼容性

  • 安全性:ONLYOFFICE遵守国际安全标准,采用三级加密技术(静态加密、传输中加密、端到端加密),确保数据的安全传输和存储。同时提供额外的文件权限设置和访问控制功能,保障文档的机密性。
  • 兼容性:ONLYOFFICE完美支持Microsoft Office的文档格式(如DOCX、XLSX、PPTX等),并且对不同操作系统兼容性极好,适用性完胜微软、WPS、苹果等办公软件。

5、应用场景

ONLYOFFICE适用于个人、企业和开发者等多种用户群体。对于个人用户而言,它是一款功能强大且免费的在线办公工具;对于企业用户而言,它则是一个高效的团队协作平台,可以集成到学习管理平台、同步与共享平台、企业管理系统等中,助力实现高效的团队管理和协作能力。

二、springboot如何集成onlyoffice

1、安装onlyoffice

docker run -i -t -d -p 9898:80 --name onlyoffice -e JWT_SECRET=123456 --restart=always -e TZ="Asia/Shanghai" -v /usr/local/onlyoffice/logs:/var/log/onlyoffice -v /usr/local/onlyoffice/data:/var/www/onlyoffice/Data -v /usr/local/onlyoffice/lib:/var/lib/onlyoffice -v /usr/local/onlyoffice/db:/var/lib/postgresql  onlyoffice/documentserver:latest

2、配置minio和mysql,执行建表语句

CREATE TABLE `only_office_file` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '文件id',
  `file_key` char(10) DEFAULT NULL COMMENT '文件唯一标识',
  `title` varchar(255) NOT NULL COMMENT '文件名称',
  `name` varchar(255) NOT NULL COMMENT '文件名称',
  `suffix` varchar(10) NOT NULL COMMENT '文件后缀',
  `content_type` varchar(255) DEFAULT NULL COMMENT '文件content-type',
  `length` bigint(11) NOT NULL COMMENT '文件大小',
  `url` text NOT NULL COMMENT '文件真实地址',
  `create_time` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',
  `creater` varchar(255) DEFAULT NULL COMMENT '创建人',
  `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '跟新时间',
  `updater` varchar(255) DEFAULT NULL COMMENT '跟新人',
  `status` tinyint(4) DEFAULT '1' COMMENT '状态',
  `version` int(11) NOT NULL DEFAULT '1' COMMENT '版本',
  `md5` char(32) DEFAULT NULL COMMENT 'md5值',
  `expiry` bigint(20) DEFAULT NULL COMMENT '过期时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4;

3、修改yml

4、启动项目

访问地址:http://localhost:9997/

点击预览/编辑就可以打开onlyoffice了:

该项目开源地址:onlyoffice: 文档在线编辑功能基于onlyoffice集成

标签:COMMENT,java,预览,DEFAULT,ONLYOFFICE,文档,NULL,onlyoffice
From: https://blog.csdn.net/mopmgerg54mo/article/details/140964446

相关文章

  • 如何把Connection 封装到工具类里面 调用工具类方法实现 增删改查操作 java JDBC
    如何把Connection封装到工具类里面调用工具类方法实现增删改查操作javaJDBC使用数据库连接池以HikariCP为例在JDBC中,使用数据库连接池是一个常见的做法,以提高数据库操作的效率和性能。连接池管理着一组数据库连接,这些连接可以被重用而不是每次需要时都创建新的连接。......
  • 如何把Connection 封装到工具类里面 调用工具类方法实现 增删改查操作 java JDBC使用
    如何把Connection封装到工具类里面调用工具类方法实现增删改查操作javaJDBC使用C3P0数据库连接池答:当使用C3P0作为数据库连接池时,你可以按照类似的模式来配置和使用它。以下是一个示例,展示了如何在Java项目中配置C3P0连接池,并创建一个工具类来管理数据库连接和执行基本的......
  • Java基础(十):静态变量、静态方法、代码块、main方法
    Java基础(十):静态变量、静态方法、代码块、main方法文章目录一、类变量/静态变量(static)二、类方法/静态方法(static)三、main方法四、代码块(一)static代码块(二)普通代码块五、属性初始化、代码块、构造器的调用优先级【超级重点】一、类变量/静态变量(static)(一)类变量......
  • java 时间段划分 1.把一个时间段划分为 整天 和非整天的时间段 2. 把List<Loca
     时间段划分  1.把一个时间段划分为整天和非整天的时间段  例如: "2024-07-1108:30:00" ~   "2024-07-2308:30:00";例如 完整的日期:2024-07-122024-07-132024-07-142024-07-152024-07-162024-07-172024-07-182024-07-192024-07-202024-07-21202......
  • 计算机毕业设计-基于Java+SSM架构的珠宝首饰交易平台系统项目开发实战(附源码+论文)
    大家好!我是程序员一帆,感谢您阅读本文,欢迎一键三连哦。......
  • 宏观层面理解Java IO
    什么是IO简单来说就是输入和输出,体现了数据的流动。从不同的视角来看,IO有不同的解释直观层面在日常生活中,键盘鼠标,显示器音响打印机,这些就属于IO设备,人机交互的过程中,需要我们对计算机输入指令,计算机给我们输出内容,声音文字视频等等。计算机视角在计算机视角,任何涉及到CPU与......
  • Java数组篇[1]:数组的定义和声明
    哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者......
  • Java数组篇[2]:数组的初始化
    哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛  今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。  我是一名后端开发爱好者......
  • 计算机毕业设计项目推荐,院系资料分类管理平台 84184(开题答辩+程序定制+全套文案 )上万
    目 录摘要1绪论1.1研究背景1.2研究意义1.3论文结构与章节安排2 院系资料分类管理平台系统分析2.1可行性分析2.2系统流程分析2.2.1数据增加流程2.2.2数据修改流程2.2.3数据删除流程2.3系统功能分析2.3.1功能性分析2.3.2非功能性分析......
  • 计算机毕业设计项目推荐,红色旅游网站设计与开发 99214(开题答辩+程序定制+全套文案 )上
    摘 要21世纪时信息化的时代,几乎任何一个行业都离不开计算机,将计算机运用于旅游服务管理也是十分常见的。过去使用手工的管理方式对旅游服务进行管理,造成了管理繁琐、难以维护等问题,如今使用计算机对旅游服务的各项基本信息进行管理,比起手工管理来说既方便又简单,而且具有易......