pageOffice基本使用
文章目录
- 前言
- 一、pageOffice是什么?
- 二、使用步骤
- 1.引入库
- 2.配置pageOffice
- 3.控制器的书写
- 总结
前言
pageOffice是一款可以在线编辑word、excel等office的插件,使用起来相对友好,主要是它自身的作用仅仅是在线编辑office,并不与数据库有任何绑定
提示:以下是本篇文章正文内容,下面案例可供参考
一、pageOffice是什么?
长期以来,B/S架构的Web应用系统在处理Office文档时都面临两大技术难题。一个是如何在网页里在线编辑Office文档,另一个是如何读写Office文档里的内容。对于在线编辑Office文档这个问题,刚刚接触此需求的开发人员大多采用的是集成一个能调用Office的ActiveX控件,但是运行稳定性、兼容性差强人意,而且调用代码只能用JavaScript,造成项目的逻辑层次被打乱,业务层和表现层混在一起,可维护性差。对于读写Office文档问题,有用服务器自动化技术(ASP.NET引入Office类型库,Java用Jacob库)读写Word、Excel的,代码复杂、运行稳定性差,并且服务器只能采用Windows平台;有用POI库的,代码复杂、只能读写格式简单的Word、Excel文档,并且POI提供的Office2003、Office2007文档格式的调用接口还不兼容,进一步增加了调用代码的复杂度
二、使用步骤
1.引入库
将pageOffice的依赖进行管理,现将pageOffice进行全局管理起来然后再引入,执行以下代码将pageOffice加入MVN
mvn install:install-file -DgroupId=com.zhuozhengsoft -DartifactId=pageoffice -Dversion=5.2.0.8 -Dpackaging=jar -Dfile=pageoffice5.2.0.8.jar
pageOffice依赖加载进来,本项目采用的是thymeleaf作为pageOffice展示的界面
<dependency><groupId>com.zhuozhengsoft</groupId><artifactId>pageoffice</artifactId><version>5.2.0.8</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>
2.配置pageOffice
代码如下(示例):
@Beanpublic ServletRegistrationBean servletRegistrationBean() {com.zhuozhengsoft.pageoffice.poserver.Server poserver = new com.zhuozhengsoft.pageoffice.poserver.Server();poserver.setSysPath(poSysPath);//设置PageOffice注册成功后,license.lic文件存放的目录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;}
3.控制器的书写
本文仅以简单案例展示,
@Value("${docpath}")private String docPath;@GetMapping(value = "/invest/word")public ModelAndView showWord(HttpServletRequest request, Map<String, Object> map) {// 假设文件名为test.docString fn = "test.doc";// 用户String userName = "lisi";// 落库// 基础配置PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);poCtrl.setServerPage("/poserver.zz");//设置服务页面// 自定义按钮poCtrl.addCustomToolButton("保存", "Save", 1);//添加自定义保存按钮
// poCtrl.addCustomToolButton("盖章","AddSeal",2);//添加自定义盖章按钮poCtrl.addCustomToolButton("打印设置", "PrintSet", 0);//打印设置poCtrl.addCustomToolButton("打印", "PrintFile", 6);//打印poCtrl.addCustomToolButton("全屏/还原", "IsFullScreen", 4);//全屏/还原poCtrl.addCustomToolButton("-", "", 0);//下划线poCtrl.addCustomToolButton("关闭", "Close", 21); // 关闭// 控件标题栏内容poCtrl.setCaption("鹰潭办公系统");// 文档加载完成后执行jspoCtrl.setJsFunction_AfterDocumentOpened("AfterDocumentOpened()");//设置并发控制时间poCtrl.setTimeSlice(20);// 设置保存文件请求路径poCtrl.setSaveFilePage("/save");//设置处理文件保存的请求方法
// // 设置保存数据请求路径
// poCtrl.setSaveDataPage("/save/data");//打开wordString filePath = "file://" + docPath + fn;// 强制留痕模式poCtrl.webOpen(filePath, OpenModeType.docRevisionOnly, userName);map.put("pageoffice", poCtrl.getHtmlCode("PageOfficeCtrl1"));ModelAndView mv = new ModelAndView("Word");return mv;}// 保存文件@RequestMapping("/save")public void saveFile(HttpServletRequest request, HttpServletResponse response) {FileSaver fs = new FileSaver(request, response);fs.saveToFile(docPath + fs.getFileName());fs.close();}
总结
pageOffice之所以能够夸浏览器是因为其在打开页面的时候同一采用的是IE的内核,所以起到了夸浏览器的作用,使用起来还是相对简便的
pageOffice基本使用相关推荐
- java调用PageOffice生成word
一.在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jac ...
- js在PageOffice打开的Word文档光标处插入书签
在使用Word时,如果内容过多有时为了快速定位到内容的某一处或某一部分怎会在该处添加书签.Word中的书签可以通过工具栏手动添加或删除,也可以通过后台程序结合JS函数在当前光标处插入书签,或根据书签名 ...
- PageOffice,word常用接口对象--Paragraph类
2019独角兽企业重金招聘Python工程师标准>>> 做项目时,只要使用Word并涉及到了文本,那么就常常需要对Word的内容进行排版,也就免不了要涉及到段落的设置,而要通过程序对 ...
- java 调用office_JAVA调用PageOffice在线打开、编辑Word文档
普通的MS Office Word只能在本地磁盘上打开和编辑保存,这使得程序员在开发项目时受到很多的约束,许多的功能无法实现或者无法达到理想的效果. 下面我就简单的和大家分享一下如何实现Word文档的 ...
- JS调用PageOffice接口,删除Word表格中光标所在行
在项目开发过程中,可能会遇到需要对Word文件中的表格进行操作的问题, 当想要删除某一行时,一般的做法都是先用选中某一行,再点击右键删除行,这样的操作不仅会降低操作效率而且容易误操作,下面我就来介绍一 ...
- PageOffice实现js执行在线编辑时Word文档中的宏命令
2019独角兽企业重金招聘Python工程师标准>>> 在对Word文档进行操作时有时会需要执行某些宏命令,但在系统中,若要执行宏命令,如果依然通过创建宏.编写宏.执行宏,来实现某些 ...
- Java集成PageOffice在线打开编辑word文件 - Spring Boot
开发环境:JDK1.8.Eclipse.Sping Boot + Thymeleaf框架. 一. 构建Sping Boot + Thymeleaf框架的项目(不再详述): 1. 新建一个maven p ...
- PageOffice实现最简单的Java导出Word中的数据
普通的MS Office Word只能在本地磁盘上打开和编辑保存,这使得程序员在开发项目时受到很多的约束,许多的功能无法实现或者无法达到理想的效果.但是通过调用PageOffice开发平台,不仅可以在 ...
- C#在线打开编辑保存Excel文件[pageoffice]
在项目开发过程中,经常会涉及到生成Excel报表,但往往系统只能通过后台生成Excel报表并保存到服务器上,若想在系统中打开Excel文件并进行编辑保存,有些人可能就没有思路了.因此,为了实现Exce ...
- java中插入表格_java 集成 pageoffice 实现在 word 中插入表格并赋值
Word中的table操作需要借助数据区域(DataRegion)实现的,要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table.因此,要想使用table,则必须在w ...
最新文章
- 《Atlas基础教程》勘误(持续更新)
- [Qt教程] 第48篇 进阶(八) 3D绘图简介
- cmmi文档_实施CMMI过程改进的框架介绍
- 实验2 java_《Java程序设计》实验2
- 为托管应用程序添加DPI Aware支持
- selenium 图片上传
- android listview item 展开动画,android的ListView点击item使item展开的做法的实现代码
- 秋意来袭,这些清新促销海报不容错过!
- Python之爬虫-京东商品
- webstorm如何支持markdown
- Qt如何调用xlsl的方法!
- 王者勋章服务器维护中,【维护】4月1日官方维护公告(抢鲜服)
- The second sprint
- Python实现两个有序集合的交集和并集
- JS数组方法shift()、unshift()用法实例分析
- excel对不同岗位进行名次排序
- ISCC2021—检查一下
- DirectX11 屏幕截图
- Codeforces Gym 101086 M ACPC Headquarters : AASTMT (Stairway to Heaven)
- mysql怎么分组计算逾期率_Tableau分享第一篇:如何计算分组留存率(Cohort Analysis)!...
热门文章
- 什么是“一书一签”?
- TryHackMe-进攻性渗透测试-15_活动目录持久化
- memblock初始化过程中fdt mem处理
- ps右键不显示编辑选项_90%的用户都不知道这项Chrome隐藏功能如何开启,超级实用!...
- 51nod 1596 搬货物【贪心/二进制】
- 虚拟内存太低的罪魁祸首者!!
- P3052 [USACO12MAR]摩天大楼里的奶牛 [状压DP]
- 4、web爬虫,scrapy模块标签选择器下载图片,以及正则匹配标签
- @Transactional(propagation=Propagation.REQUIRED) 事务传播行为种类(注解方式)
- 点阵字库的生产原理(转)