SpringMVC 项目集成 PageOffice V6 最简单代码
本文描述了PageOffice产品在SpringMVC项目中如何集成调用。
-
新建SpringMVC项目:pageoffice6-springmvc-simple
-
在您项目的pom.xml中通过下面的代码引入PageOffice依赖。pageoffice.jar已发布到Maven中央仓库 (opens new window),建议使用最新版本。
<dependency>
<groupId>com.zhuozhengsoft</groupId>
<artifactId>pageoffice</artifactId>
<version>6.0.0.11-javax</version>
</dependency>
- 在您项目的web.xml配置PageOffice的服务器端servlet程序,添加如下代码:
<servlet>
<servlet-name>poserver</servlet-name>
<servlet-class>com.zhuozhengsoft.pageoffice.poserver.Server</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>poserver</servlet-name>
<url-pattern>/poserver.zz</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>poserver</servlet-name>
<url-pattern>/sealsetup.exe</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>poserver</servlet-name>
<url-pattern>/poclient</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>poserver</servlet-name>
<url-pattern>/pageoffice.js</url-pattern>
</servlet-mapping>
- 在pageoffice6-springmvc-simple/src/main/webapp/WEB-INF目录下新建lib文件夹,拷贝PageOffice客户端安装程序到此目录下。比如:
- Windows客户端安装程序:posetup_6.0.0.11.exe
- 国产版操作系统客户端安装程序:com.zhuozhengsoft.pageoffice_6.0.0.11_amd64.deb
PageOffice客户端安装程序下载地址:https://gitee.com/pageoffice/pageoffice6-client/releasesPageOffice
- 在pageoffice6-springmvc-simple/src/main/webapp目录下新建doc文件夹,准备一个有内容test.docx文件。新建Controller并调用PageOffice打开此文件,例如:
@Controller
@RequestMapping("Document")
public class DocumentController {
@RequestMapping("/openFile")
public ModelAndView openFile(HttpServletRequest request, Map<String, Object> map) throws Exception{
//******************************卓正PageOffice组件的使用*******************************
PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
poCtrl.setSaveFilePage("saveFile");
//打开Word文档
poCtrl.webOpen("/doc/test.docx", OpenModeType.docNormalEdit, "张三");
map.put("pageoffice", poCtrl.getHtmlCode());
ModelAndView mv = new ModelAndView("Document/openFile");
return mv;
}
@RequestMapping("/saveFile")
public void saveFile(HttpServletRequest request, HttpServletResponse response) throws Exception{
FileSaver fs = new FileSaver(request, response);
fs.saveToFile(request.getSession().getServletContext().getRealPath("doc/")+fs.getFileName());
fs.close();
}
}
- 为上一步代码中的的ModelAndView准备页面。新建Document/openFile.jsp,在页面中添加下面的代码用来嵌入PageOffice控件:
<div style=" width:auto; height:800px;">
${pageoffice}
</div>
- 在需要点击超链接在线打开文件的页面添加pageoffice.js的引用。
<script type="text/javascript" src="/pageoffice.js"></script>
- 编写打开文件的超链接代码。调用POBrowser的openWindow方法弹出窗口访问Controller方法Document/openFile在线打开文件。
<a href="javascript:POBrowser.openWindow('Document/openFile','width=1150px;height=900px;');">
在线打开文档
</a>
- 启动项目,点击“在线打开文档”超链接,查看在线打开编辑保存Office文件的效果。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗