首页 > 其他分享 >转载:pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存

转载:pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存

时间:2023-02-28 09:33:48浏览次数:64  
标签:srb 插件 Word springboot pageoffice poserver 服务器 addUrlMappings

pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存

需求:

oa系统上,想实现在线,服务器上doc,docx文档,在web打开,编辑。编辑后,可以再同步保存到服务器端。

开发环境:

java springboot,thymeleaf

服务器环境:

无特殊要求,能运行java虚拟机即可 ,服务器上有固定磁盘放word文档。方便pageoffice插件在线打开

客户端环境 :

win7 win8 win10 win11 麒麟7 麒麟10 统信

参考教程

https://gitee.com/pageoffice/springboot-pageoffice

具体 集成步骤

后端 :

1在您项目的pom.xml中通过下面的代码引入PageOffice依赖。
<dependency>
     <groupId>com.zhuozhengsoft</groupId>   
  <artifactId>pageoffice</artifactId>   
  <version>5.3.0.3</version>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5
2在您项目的启动类Application类中配置如下代码。
@Bean
   public ServletRegistrationBean pageofficeRegistrationBean()  {
com.zhuozhengsoft.pageoffice.poserver.Server poserver = new com.zhuozhengsoft.pageoffice.poserver.Server();
/**如果当前项目是打成jar或者war包运行,强烈建议将license的路径更换成某个固定的绝对路径下,不要放当前项目文件夹下,为了防止每次重新发布项目导致license丢失问题。
  * 比如windows服务器下:D:/pageoffice,linux服务器下:/root/pageoffice
 */
//设置PageOffice注册成功后,license.lic文件存放的目录
poserver.setSysPath(poSysPath);//poSysPath可以在application.properties这个文件中配置,也可以直设置文件夹路径,比如:poserver.setSysPath("D:/pageoffice");
ServletRegistrationBean srb = new ServletRegistrationBean(poserver);
srb.addUrlMappings("/poserver.zz");
srb.addUrlMappings("/posetup.exe");
srb.addUrlMappings("/pageoffice.js");
srb.addUrlMappings("/jquery.min.js");
srb.addUrlMappings("/pobstyle.css");
srb.addUrlMappings("/sealsetup.exe");
return srb;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
3.新建Controller并调用PageOffice,例如:
public class PageOfficeController {
@RequestMapping(value = "/Word", method = RequestMethod.GET)
  public ModelAndView showWord(HttpServletRequest request) {
  PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
  poCtrl.setServerPage(request.getContextPath() + "/poserver.zz");//设置服务页面
  poCtrl.webOpen("/doc/test.doc", OpenModeType.docNormalEdit, "张三");
  request.setAttribute("pageoffice", poCtrl.getHtmlCode("PageOfficeCtrl1"));
  ModelAndView mv = new ModelAndView("Word.html");
   return mv;
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
4.新建View页面,例如:Word.html(PageOfficeCtroller返回的View页面,用来嵌入PageOffice控件),PageOffice在View页面输出的代码如下:
<div style="width: auto; height: 700px;" th:utext="${pageoffice}">
  • 1
  • 2
5.在要打开文件的页面的head标签中先引用pageoffice.js文件后,再调POBrowser.openWindowModeless()方法打开文件,例如:
<!--pageoffice.js的引用路径来自于第2步的项目启动类中的配置路径,一般将此js配置到了当前项目的根目录下 -->
<script type="text/javascript" src="pageoffice.js"></script>

<!--openWindowModeless()方法的第一个参数指向的url路径是指调用pageoffice打开文件的controller路径,比如下面的"SimpleWord/Word"-->
<a href="javascript:POBrowser.openWindowModeless('SimpleWord/Word', 'width=1050px;height=900px;');">最简单在线打开保存Word文件(URL地址方式)</a>

  • 1
  • 2
  • 3
  • 4
  • 5
转载:https://blog.csdn.net/weixin_38757817/article/details/127787226

标签:srb,插件,Word,springboot,pageoffice,poserver,服务器,addUrlMappings
From: https://www.cnblogs.com/lhl77/p/17162784.html

相关文章

  • centos7 离线安装插件-利用下载好的文件安装便利方法利用下载好的文件安装便利方法
    移除/etc/yum.repos.d中所有repo文件mkdir/etc/yum.repos.d/oldmv/etc/yum.repos.d/*.repo/etc/yum.repos.d/old/修改CentOS-Media.repo如下,没有自己建一个vi......
  • 不坑盒子:word/wps最强辅助工具2023最新版
    不坑盒子简介很多朋友在工作过程中需要对Word文档进行编辑处理,如果想让Word排版更有效率可以试试小编带来的这款不坑盒子软件,这是一个非常好用的插件工具,专门应用在Word文......
  • SpringBoot项目结构
    一.总体概述SpringBoot框架简单来说就是一个Web框架,其目的在于快速开发一个Web应用的后端实现主要包括三部分:java文件夹,Resource文件夹,pom.xml二.Java文件夹Co......
  • springboot+mybatis-plus数据库mysql+sybase遇到的一些问题
    我们服务启动时,sybase数据库连接直接创建10个连接。(为什么启动时会创建这么多连接?)有时候可以写入sybase库,大部分写入失败查询sybase库数据可以查出来,没问题尝试的方......
  • IDEA插件Apifox,一键自动生成接口文档!
    有关Apifox软件之前写过一篇文章:接口测试神器Apifox,亲测好用!如何一键自动生成数据库文档之前也写过一篇文章:数据库界的Swagger:一键生成数据库文档!一、Apifox插件的优......
  • SpringCloudAlibaba、SpringCloud、SpringBoot、Spring版本对应关系
    SpringCloudAlibaba版本说明:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明最新(SpringBoot3.0以下)示例:SpringCloudAlibabaVersionSpringCloud......
  • SpringBoot 搭建微服务初体验
    (SpringBoot搭建微服务初体验)前言大家好,微服务是现在面试中必不可少的一项技能了,掌握微服务,不仅能够加薪升职,还能在面试中,底气十足,不怯场,不怕被压薪资。所以今天就特意......
  • springboot中redis使用和工具
    application.properties#Redis相关配置spring.data.redis.host=localhost#端口spring.data.redis.port=6379#reids数据库索引spring.data.redis.database=0Red......
  • Blender插件:水滴生成器
    推荐:将 ​​NSDT场景编辑器​​ 加入你的3D开发工具链。​1、官方介绍:适用于Blender3.1及更高版本的全过程液滴生成器,有以下特性:完全程序化:所有的几何体都是100%程序化地......
  • springboot脱包部署
    <plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration>......