springboot怎么打印日志(pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存)
导读:pageOffice插件 springboot实现服务器上Word文档在线打开编辑保存 需求:...
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
具体 集成步骤
后端 :
在您项目的pom.xml中通过下面的代码引入PageOffice依赖 。 <dependency> <groupId>com.zhuozhengsoft</groupId> <artifactId>pageoffice</artifactId> <version>5.3.0.3</version> </dependency> 在您项目的启动类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; } 新建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; } } 新建View页面,例如:Word.html(PageOfficeCtroller返回的View页面,用来嵌入PageOffice控件) ,PageOffice在View页面输出的代码如下: <div th:utext="${pageoffice}"> 在要打开文件的页面的head标签中先引用pageoffice.js文件后 ,再调POBrowser.openWindowModeless()方法打开文件,例如: <!--pageoffice.js的引用路径来自于第2步的项目启动类中的配置路径,一般将此js配置到了当前项目的根目录下 --> <script type="text/javascript" src="https://www.cnblogs.com/qq742655/archive/2023/02/10/pageoffice.js"></script> <!--openWindowModeless()方法的第一个参数指向的url路径是指调用pageoffice打开文件的controller路径,比如下面的"SimpleWord/Word"--> <a href="javascript:POBrowser.openWindowModeless(SimpleWord/Word, width=1050px;height=900px;);">最简单在线打开保存Word文件(URL地址方式)</a>转载地址:https://blog.csdn.net/weixin_38757817/article/details/127787226
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!