前言:
对于中大型OA系统来讲,在线打开word文档已是一个经常使用需求。既然有在线操做word文档的需求,那就不可避免要有打开文档时动态填充数据的需求。这篇文章就让小编来介绍一个中间件技术-pageoffice。javascript
pageoffice对于word的功能作到了80%以上的封装,并且api比较简单容易上手。html
推荐像小编同样 只懂Java不懂VBA接口 不懂office程序调用的同窗花10分钟学习一下。java
先看效果jquery
这里的“张三”和“销售部”就是由Java后台填充到word文档中的数据。web
如何集成(复制粘贴只需5步)
1.官网下载pageoffice(http://www.zhuozhengsoft.com/dowm/).api
2.去刚才下载的集成文件中找到lib,将里面的内容放在项目web-inf的lib中引入jar包,而后将web.xml的pageoffice配置引入到本身项目的web.xml中。
3.在父页面aaa.jsp(须要打开文档的页面)放一个a标签或者button
写a标签以前先引入pageoffice须要的js文件less
<script type="text/javascript" src="/jquery.min.js"></script>
<script type="text/javascript" src="/pageoffice.js" id="po_js_main"></script>
而后添加a标签jsp
<a href="javascript:POBrowser.openWindowModeless('Word.jsp', 'width=1050px;height=900px;');">打开文档并填充数据</a>
4.在父页面同级目录下建立一个Word.jsp文件
<%@ page language="java"
import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*"
pageEncoding="utf-8"%>
<%
PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);
poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须
WordDocument doc = new WordDocument();
//打开数据区域
DataRegion dataRegion1 = doc.openDataRegion("PO_aaa");
//给数据区域赋值
dataRegion1.setValue("张三");
poCtrl1.setWriter(doc);
//打开Word文件
poCtrl1.webOpen("test.doc", OpenModeType.docNormalEdit, "张三");
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>简单的给Word文档中的数据区域赋值</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<div style="width: auto; height: 700px;">
<%=poCtrl1.getHtmlCode("PageOfficeCtrl1")%>
</div>
</body>
</html>学习
视频教程请参见 卓正软件官网技术支持页面最下方的视频教程点开便可。ui