当前位置: 首页 > news >正文

响应式app网站模板昌吉建设局网站

响应式app网站模板,昌吉建设局网站,现在的seo1发布页在哪里,修改wordpress的权限设置ONLYOFFICE 文档8.2版本已发布#xff1a;PDF 协作编辑、改进界面、性能优化、表格中的 RTL 支持等更新 文章目录 前言ONLYOFFICE 产品简介功能与特点Spring Boot 项目中集成 OnlyOffice1. 环境准备2. 部署OnlyOffice Document Server3. 配置Spring Boot项目4. 实现文档编辑功… ONLYOFFICE 文档8.2版本已发布PDF 协作编辑、改进界面、性能优化、表格中的 RTL 支持等更新 文章目录 前言ONLYOFFICE 产品简介功能与特点Spring Boot 项目中集成 OnlyOffice1. 环境准备2. 部署OnlyOffice Document Server3. 配置Spring Boot项目4. 实现文档编辑功能5. 文档保存与版本控制1配置文件 application.properties2依赖管理 pom.xml3控制器 DocumentController.java4配置类 OnlyOfficeConfig.java5文档服务类 DocumentService.java6文档模型类 Document.java7前端页面 index.html8用户服务类 UserService.java可选9修改控制器以添加权限验证 DocumentController.java 6. 安全性和权限管理 体验与测评8.2 版本的其他更新结尾ONLYOFFICE 项目介绍 前言 提示这里可以添加本文要记录的大概内容 随着互联网技术的发展越来越多的企业和个人开始寻求高效的在线文档处理解决方案。传统的本地文档编辑软件虽然功能强大但在多用户协同工作方面存在诸多不便。为了满足这一需求市场上涌现出了许多优秀的在线文档编辑工具其中OnlyOffice因其出色的性能和灵活的集成能力而受到广泛好评。本文将详细介绍如何在Spring Boot项目中集成OnlyOffice实现文档的在线编辑功能并分享OnlyOffice的产品特点和用户体验。 ONLYOFFICE 产品简介 OnlyOffice是一套完整的开源办公套件旨在为企业和个人提供高效的文档处理解决方案。它包含文字处理、电子表格和演示文稿三种类型的文档编辑器支持多种文档格式的读取和编辑。OnlyOffice不仅提供了丰富的桌面应用程序还拥有强大的Web版编辑器——OnlyOffice Document Server后者可以方便地集成到各类Web应用中实现文档的在线编辑和协作。 功能与特点 全面的文档支持支持DOCX、XLSX、PPTX等多种文档格式的编辑和转换。实时协作编辑允许多个用户同时编辑同一文档所有更改实时同步。权限管理提供细粒度的文档访问权限控制确保文档的安全性。版本管理自动记录文档的历史版本便于追踪修改记录和恢复早期版本。插件扩展支持通过插件扩展编辑器的功能满足更多个性化需求。API接口丰富提供RESTful API和JavaScript API方便开发者集成到现有系统中。 Spring Boot 项目中集成 OnlyOffice 1. 环境准备 Java环境确保已经安装了Java环境建议JDK 1.8及以上版本。 构建工具安装Maven或Gradle作为项目的构建工具。 Spring Boot项目可以通过Spring Initializr快速创建一个Spring Boot项目基础框架。 2. 部署OnlyOffice Document Server 安装OnlyOffice可以选择在本地或云服务器上安装OnlyOffice Document Server。官方提供了详细的安装指南可以根据自己的操作系统选择合适的安装方法。 检查安装安装完成后确保Document Server能够正常访问通常可以通过浏览器访问http://your_server_ip:80来检查是否成功安装。 3. 配置Spring Boot项目 添加配置在Spring Boot项目的application.properties文件中添加OnlyOffice服务器的相关配置信息如服务器地址等。 onlyoffice.server.urlhttp://your_server_iponlyoffice.server.secretyour_secret_key创建控制器创建一个控制器(Controller)用于处理前端请求调用OnlyOffice API进行文档的加载、保存等操作。 RestControllerRequestMapping(/documents)public class DocumentController {Value(${onlyoffice.server.url})private String serverUrl;Value(${onlyoffice.server.secret})private String secretKey;GetMapping(/{id})public ResponseEntity? getDocument(PathVariable String id) {// 调用OnlyOffice API获取文档编辑所需参数// ...}PostMapping(/{id})public ResponseEntity? saveDocument(PathVariable String id, RequestBody Document document) {// 处理文档保存逻辑// ...}}4. 实现文档编辑功能 前端集成利用OnlyOffice提供的JavaScript API在前端页面中嵌入文档编辑器。 div iddocument-editor/divscript srchttps://your_server_ip/web-apps/apps/api/documents/api.js/scriptscriptfunction onDocumentReady() {var docEditor new DocsAPI.DocEditor(document-editor, {document: {fileType: docx,key: document_id,title: Sample Document,url: https://your_server_ip/documents/document_id},documentType: word,editorConfig: {callbackUrl: https://your_backend_url/documents/document_id,mode: edit,lang: en},customization: {actionBar: false,chat: false}});}/script5. 文档保存与版本控制 保存文档当用户完成编辑并保存文档时OnlyOffice会将更新后的文档发送回指定的回调URL。 PostMapping(/{id})public ResponseEntity? saveDocument(PathVariable String id, RequestBody Document document) {// 将文档保存到数据库或文件系统中// 记录版本信息return ResponseEntity.ok().build();}版本管理记录文档的历史版本便于追踪修改记录和恢复早期版本。 以下是Spring Boot项目中集成OnlyOffice的完整代码部分 1配置文件 application.properties onlyoffice.server.urlhttp://your_server_ip onlyoffice.server.secretyour_secret_key2依赖管理 pom.xml dependencies!-- Spring Boot Web Starter --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency!-- Spring Boot Thymeleaf Starter (可选用于模板引擎) --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-thymeleaf/artifactId/dependency!-- Spring Boot Security Starter (可选用于安全控制) --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-security/artifactId/dependency!-- JSON处理库 --dependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactId/dependency /dependencies3控制器 DocumentController.java package com.example.onlyoffice.controller;import com.example.onlyoffice.config.OnlyOfficeConfig; import com.example.onlyoffice.model.Document; import com.example.onlyoffice.service.DocumentService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*;RestController RequestMapping(/documents) public class DocumentController {Autowiredprivate OnlyOfficeConfig onlyOfficeConfig;Autowiredprivate DocumentService documentService;GetMapping(/{id})public ResponseEntityDocument getDocument(PathVariable String id) {Document document documentService.getDocumentById(id);if (document null) {return ResponseEntity.notFound().build();}return ResponseEntity.ok(document);}PostMapping(/{id})public ResponseEntityVoid saveDocument(PathVariable String id, RequestBody Document document) {documentService.saveDocument(id, document);return ResponseEntity.ok().build();}GetMapping(/config/{id})public ResponseEntityObject getConfig(PathVariable String id) {return ResponseEntity.ok(onlyOfficeConfig.getConfig(id));} }4配置类 OnlyOfficeConfig.java package com.example.onlyoffice.config;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component;import java.util.HashMap; import java.util.Map;Component public class OnlyOfficeConfig {Value(${onlyoffice.server.url})private String serverUrl;Value(${onlyoffice.server.secret})private String secretKey;public MapString, Object getConfig(String documentId) {MapString, Object config new HashMap();config.put(document, Map.of(fileType, docx,key, documentId,title, Sample Document,url, serverUrl /documents/ documentId));config.put(documentType, word);config.put(editorConfig, Map.of(callbackUrl, serverUrl /documents/ documentId,mode, edit,lang, en));config.put(customization, Map.of(actionBar, false,chat, false));return config;} }5文档服务类 DocumentService.java package com.example.onlyoffice.service;import com.example.onlyoffice.model.Document; import org.springframework.stereotype.Service;import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.ArrayList; import java.util.Collections;Service public class DocumentService {private final MapString, Document documents new HashMap();private final MapString, ListDocument history new HashMap();public Document getDocumentById(String id) {return documents.get(id);}public void saveDocument(String id, Document document) {Document currentDocument documents.get(id);if (currentDocument ! null) {history.computeIfAbsent(id, k - new ArrayList()).add(currentDocument);}documents.put(id, document);}public ListDocument getHistory(String id) {return history.getOrDefault(id, Collections.emptyList());} }6文档模型类 Document.java package com.example.onlyoffice.model;import lombok.Data;Data public class Document {private String content;// 其他字段... }7前端页面 index.html !DOCTYPE html html langen headmeta charsetUTF-8titleOnlyOffice Document Editor/title /head body div iddocument-editor styleheight: 600px;/div script srchttps://your_server_ip/web-apps/apps/api/documents/api.js/script scriptasync function loadDocumentEditor() {const response await fetch(/documents/config/document_id);const config await response.json();new DocsAPI.DocEditor(document-editor, config);}window.onload loadDocumentEditor; /script /body /html8用户服务类 UserService.java可选 package com.example.onlyoffice.service;import org.springframework.stereotype.Service;Service public class UserService {public boolean hasAccess(String username, String documentId) {// 这里实现具体的权限验证逻辑// 示例假设所有用户都有访问权限return true;} }9修改控制器以添加权限验证 DocumentController.java package com.example.onlyoffice.controller;import com.example.onlyoffice.config.OnlyOfficeConfig; import com.example.onlyoffice.model.Document; import com.example.onlyoffice.service.DocumentService; import com.example.onlyoffice.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.security.core.annotation.AuthenticationPrincipal; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.web.bind.annotation.*;RestController RequestMapping(/documents) public class DocumentController {Autowiredprivate OnlyOfficeConfig onlyOfficeConfig;Autowiredprivate DocumentService documentService;Autowiredprivate UserService userService;GetMapping(/{id})public ResponseEntityDocument getDocument(PathVariable String id, AuthenticationPrincipal UserDetails userDetails) {if (!userService.hasAccess(userDetails.getUsername(), id)) {return ResponseEntity.status(HttpStatus.FORBIDDEN).build();}Document document documentService.getDocumentById(id);if (document null) {return ResponseEntity.notFound().build();}return ResponseEntity.ok(document);}PostMapping(/{id})public ResponseEntityVoid saveDocument(PathVariable String id, RequestBody Document document, AuthenticationPrincipal UserDetails userDetails) {if (!userService.hasAccess(userDetails.getUsername(), id)) {return ResponseEntity.status(HttpStatus.FORBIDDEN).build();}documentService.saveDocument(id, document);return ResponseEntity.ok().build();}GetMapping(/config/{id})public ResponseEntityObject getConfig(PathVariable String id, AuthenticationPrincipal UserDetails userDetails) {if (!userService.hasAccess(userDetails.getUsername(), id)) {return ResponseEntity.status(HttpStatus.FORBIDDEN).build();}return ResponseEntity.ok(onlyOfficeConfig.getConfig(id));} }以上代码涵盖了从配置文件、依赖管理、控制器、配置类、服务类、模型类到前端页面的完整实现。希望这些代码能帮助你在Spring Boot项目中成功集成OnlyOffice。如果有任何问题或需要进一步的帮助请随时提问。 6. 安全性和权限管理 权限控制通过OnlyOffice提供的API设置文档的访问权限例如只读、编辑等。 后端验证在Spring Boot后端实现相应的权限验证逻辑确保只有授权用户才能访问特定的文档。 体验与测评 在实际使用中OnlyOffice的表现令人满意。其界面设计简洁直观用户可以轻松上手编辑器响应速度快即使在网络条件不佳的情况下也能保持流畅的操作体验。OnlyOffice对中文文档的支持也相当不错无论是字体显示还是排版布局都达到了较高的水平。 更快的文件加载速度为了加快编辑器的打开速度我们优化了加载脚本。与之前的版本相比 打开普通文件 – 最高提速 21% 打开演示文稿 – 最高提速 17% Excel PPT PDF 当然也有一些不足之处需要注意。部分高级功能需要购买商业许可证才能使用这可能会增加企业的成本负担。另外与其他一些在线文档编辑工具相比OnlyOffice的社区活跃度稍显不足遇到问题时可能难以获得及时的帮助和支持。 8.2 版本的其他更新 协作编辑 PDF 文件 文本文档中的域代码 从第三方来源插入文本 预设阿拉伯语数字编号 电子表格中的迭代计算 电子表格编辑器中的丝滑滚动 在幻灯片上绘图 演示文稿中的随机切换效果 所有语言的词典更新和拼写检查改进 新的图表类型如直方图、瀑布图、漏斗图等。 结尾ONLYOFFICE 项目介绍 OnlyOffice不仅仅是一款文档编辑工具它背后是一个充满活力的开源项目。该项目始于2009年由Ascensio System SIA公司发起并维护。多年来OnlyOffice不断发展壮大形成了一个包括文档编辑器、邮件客户端、项目管理等多个子项目的生态系统。目前OnlyOffice在全球范围内拥有数百万用户得到了广泛的认可和好评。 ONLYOFFICE 官网
http://www.dnsts.com.cn/news/20084.html

相关文章:

  • 有没有做任务拿佣金的网站网站建设公司antnw
  • 网站备案信息查询接口山东网站建设代理
  • 玩具网站设计产品展示网站源码php
  • 传媒网站建设国内跨境电商平台有哪些?
  • 中文网站建设公司基于php的图书管理系统论文
  • 往网站上传照片怎么做h5网页版制作
  • 什么是网站模板长春网站建设长春
  • 做网站客源wordpress关键词内链插件
  • 专业网站构建苏州网站设计公司
  • 虚拟主机能建设网站吗网站后台登陆显示验证码错误
  • 网站域名备案查询什么网站可以做告白的网页
  • 如何建手机销售网站网站设计是什么
  • 河北邢台企业做网站沧州做网站最好的公司
  • 个人网站模板素材津南区网络推广公司
  • 刘淼 网站开发用户研究 网站
  • 常州城乡建设局网站首页东莞seo托管
  • 一站式装修平台怎么学会建自己网站的方法
  • 没有网站也可以做cpa恢复网址
  • 网站公司倒闭flash 网站头部
  • 湛江有没有做网站的公司建设网站多少钱
  • 快速生成网站程序公司建站网站
  • 大学网站开发模板免费下载拍摄视频制作的广告公司
  • 建站群赚钱有前途吗青岛建站推广
  • 无锡做网站公司多少钱石家庄专门做网站
  • 网页制作与网站建设宝典 pdf在网站做的pdf有水印如何删除
  • 做网站产品搜索展示实现提供手机网站建设哪家好
  • 中国建设投资集团 网站首页微信小程序怎么批量删掉
  • 网站安全检测怎么关掉惠州网站制作案例
  • 网站换空间的流程网站编辑做图片用什么不同
  • 网站开发文档是什么概念如何搭建免费网站