Java代码编写
Springmvc集成开发步骤:
拷贝ZDFOffice开发包中“集成文件”文件夹中的lib文件夹覆盖到您自己的Web项目中的WEB-INF目录下;
参考ZDFOffice开发包中“集成文件”文件夹中的web.xml文件,配置一下自己的Web项目中的web.xml文件;
在文档列表JSP页面(包含打开文件超链接的页面)的
<head></head>
中添加zdfoffice.js的引用:<script type="text/javascript" src="zdfoffice.js" ></script>
在页面中添加打开文件的超链接或按钮,如下:
<a href="javascript:ZDFAPP.openWindow('opendoc.jsp?fn=1.doc');">查看</a> <a href="javascript:ZDFAPP.openWindow('opendoc.jsp?fn=2.doc');">编辑</a>
ZDFAPP的说明:
- ZDFAPP是zdfoffice.js中定义的一个js对象,此对象的openWindow方法是用来启动手机上ZDFOffice App的。
- openWindow方法的参数:此参数值是一个jsp页面或action方法的url地址,例如:opendoc.jsp, 在此jsp页面的中创建ZDFOfficeCtrl对象控制手机上ZDFOffice App打开指定文件。 此属性中传递参数的方法与url传参数的方法一样,可以传递多个参数,但是不要用中文, 如果有中文值的参数一定要编码一下,在opendoc.jsp中解码获取中文参数值。
实现“opendoc.jsp”:
String fn = request.getParameter("fn"); // 获取自己在openWindow方法中传递的参数 String filePath = 具体业务逻辑(fn); // 根据业务逻辑和参数生成文件真正的url下载地址 ZDFOfficeCtrl zdfCtrl=new ZDFOfficeCtrl(request, response); zdfCtrl.setSaveFilePage("savedoc.jsp"); // 设置保存文件时,服务器端负责接收和处理保存文件流的后端地址 zdfCtrl.webOpen(filePath, OpenModeType.docNormalEdit, "用户名");
Springboot集成开发步骤:
- 在您项目的pom.xml中通过下面的代码引入PageOffice依赖。pageoffice.jar已发布到Maven中央仓库,建议使用最新版本。
<dependency> <groupId>com.zhuozhengsoft</groupId> <artifactId>pageoffice</artifactId> <version>6.0.0.13-javax</version> </dependency>
在您项目的启动类Application类中添加一项@Bean配置,此为ZDFOffice服务器端的必要配置,代码如下:
@Value("${posyspath}") private String poSysPath; /** * 添加zdfoffice授权程序 * @return */ @Bean public ServletRegistrationBean servletRegistrationBean3() { com.zhuozhengsoft.zdfoffice.Server zdfserver = new com.zhuozhengsoft.zdfoffice.Server(); zdfserver.setSysPath(poSysPath);//设置ZDFOffice注册成功后,mlicense.lic文件存放的目录 ServletRegistrationBean srb = new ServletRegistrationBean(zdfserver); srb.setName("zdfserver"); srb.addUrlMappings("/zdfserver.zz"); srb.addUrlMappings("/zdfoffice.js"); return srb;// }
在文档列表页面(包含打开文件超链接的页面)的
<head></head>
中添加zdfoffice.js的引用:<script type="text/javascript" src="zdfoffice.js" ></script>
在页面中添加打开文件的超链接或按钮,如下:
<a href="javascript:ZDFAPP.openWindow('opendoc?fn=1.pdf');">查看</a> <a href="javascript:ZDFAPP.openWindow('opendoc?fn=2.doc');">编辑</a>
ZDFAPP的说明:
- ZDFAPP是zdfoffice.js中定义的一个js对象,此对象的openWindow方法是用来启动手机上ZDFOffice App的。
- openWindow方法的参数:此参数值是一个jsp页面或action方法的url地址,例如:opendoc, 在此jsp页面的中创建ZDFOfficeCtrl对象控制手机上ZDFOffice App打开指定文件。 此属性中传递参数的方法与url传参数的方法一样,可以传递多个参数,但是不要用中文, 如果有中文值的参数一定要编码一下,在opendoc中解码获取中文参数值。
实现opendoc。
@Value("${docpath}") private String docPath; @RequestMapping(value="/opendoc", method=RequestMethod.GET) public void openDoc(HttpServletRequest request, HttpServletResponse response){ String fileName = request.getParameter("fn"); OpenModeType openModoType = OpenModeType.docNormalEdit; if(fileName.lastIndexOf(".pdf") > 0){ openModoType = OpenModeType.pdfNormal; } ZDFOfficeCtrl zdfCtrl = new ZDFOfficeCtrl(request, response); zdfCtrl.setSysPath(poSysPath); zdfCtrl.setSaveFilePage("savedoc"); zdfCtrl.webOpen("file://" + docPath + fileName, openModoType, "Zhang" ); }