前言:

在word文件中,虽然也有表格。但是有时我们想要将Excel中表格的大量数据直接插入到word文档中,这就需要用到word的插入对象的功能,也就是直接将Excel文件当做对象插入到word中。

本地的word插入Excel操作很简单,就是直接插入—对象—选择相应的Excel文件即可。

那么想要在线打开word文档的同时,将指定的Excel文档插入到指定的word文档的指定位置中,要怎么办呢?这需要开发者具备将activex控件集成到Java环境的能力。对于大部分Java开发工程师来说,仅仅解决单一的功能就要掌握activex控件,未免学习成本太大。

所以我们今天就要介绍一个中间件技术——pageoffice,此中间件技术已经将 在web系统操作office文档的大部分功能整合完毕,大家只需要关注自己web系统的业务逻辑即可,学习成本低,且功能很丰富。下面我们来实战用pageoffice实现一下在word中插入Excel对象的功能。

先看效果:

文档里面的Excel表格就是通过pageoffice插入到word文档里的Excel对象。

部署步骤(只需5步)

去刚才下载的集成文件中找到lib,将里面的内容放在项目web-inf的lib中引入jar包,然后将web.xml的pageoffice配置引入到自己项目的wb.xml中

2.在父页面aaa.jsp(需要打开文档的页面)放一个a标签或者button

写a标签之前先引入pageoffice需要的js文件

然后添加a标签

后台编程插入Excel文件到数据区域

3.在父页面同级目录下创建一个名为Word.jsp的文件

import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*"

pageEncoding="utf-8"%>

//******************************卓正PageOffice组件的使用*******************************

PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);

poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); //此行必须

WordDocument worddoc = new WordDocument();

//先在要插入word文件的位置手动插入书签,书签必须以“PO_”为前缀

//给DataRegion赋值,值的形式为:"[word]word文件路径[/word]、[excel]excel文件路径[/excel]、[image]图片路径[/image]"

DataRegion data1 = worddoc.openDataRegion("PO_p1");

data1.setValue("[excel]1.xls[/excel]");

poCtrl1.setWriter(worddoc);

poCtrl1.webOpen("test.doc", OpenModeType.docNormalEdit, "张三");

%>

后台编程插入excel文件到数据区域(企业版)

4.新建文件

新建一个名为test.doc的word文件(如果新建的是docx文件就将第三步的poCtrl1.webOpen("test.doc", OpenModeType.docNormalEdit, "张三");代码改为poCtrl1.webOpen("test.docx", OpenModeType.docNormalEdit, "张三");

新建一个名为1.xls的Excel文件(如果新建的是xlsx文件就将第三步中的data1.setValue("[excel]1.xls[/excel]");代码改为data1.setValue("[excel]1.xlsx[/excel]");)

可以在1.xls文件中填写一些数据以供测试。

将新建的两个文件放在word.jsp同级目录下。

5.添加书签

打开项目中刚才放置进去的test.doc文件,在想要插入Excel文档对象的位置添加一个书签,名称必须PO_开头,比如我们设置为PO_p1

如果我们添加的书签名是PO_p2  那就将第三步中的代码 DataRegion data1 = worddoc.openDataRegion("PO_p1");改为DataRegion data1 = worddoc.openDataRegion("PO_p2");

然后启动项目直接访问aaa.jsp点击链接.此时会提示安装插件,点击安装成功后提示注册,填写相关信息,填写注册Q37LN-W8NI-KFSQ-LEY3Y就可以打开文档.

注意:如果需要更丰富的功能,大家可以去pageoffice官网下载示例代码直接将samples4文件夹扔到Tomcat的webapps下,启动Tomcat,浏览器访问http://localhost:8080/Samples4/index.html,查看示例中的下面一个链接,直接看samples4文件夹下WordResExcel文件夹里面的代码.

怎么向java窗口中插入XSL表_Java向word中插入Excel文件对象相关推荐

  1. word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...

    用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...

  2. matlab如何在word中插入多个表格,怎么把excel中的数据批量导入到word中的表格中《不同表格间的数据导入》...

    如何将excel表格中大量数据导入matlab中并作图 工具:MATLAB.office excel 将待导入的矩阵结构据录入Excel中,录入时注意行列原矩阵一一对应. 录入完以后保存数据,为了后续 ...

  3. java读写word模板_Java操作Word模板插入列表

    Java操作Word模板插入列表 通过poi操作word,插入各种编号的列表,包括数字,字母,罗马字符,自定义任意字符.下面的示例就用了音乐符♬. 1.制作模板,插入列表使用语法*,模板内容为{{*n ...

  4. A表取数据处理后插入B表,Mysql大数据插入,优化过程

    情景:A表中有20万条数据,取出处理,然后插入B表. 第一版:分页取出,组成sql语句.批量插入数据 $tempData = $this->model->page($page,'1000' ...

  5. EasyExcel在项目中的应用-在web中导出带下拉框和批注的excel文件

    前言 ​ 好长一段时间没有更新博客了,最近刚刚找到实习工作,接触了企业中的项目,在这段时间的实习过程中,终于知道了企业级项目的体量和业务难度跟之前的小项目是完全不同的.10多天的适应期也逐渐让我找到了 ...

  6. excel拆分为多个sheet工作表或多个单独的excel文件。超好用

    excel拆分 一.前言 二.准备员工信息表测试数据 三.拆分 三(1):根据所在分公司列拆分为多个sheet 操作步骤 1. 选中要拆分的sheet,右键单击"查看代码",如图: ...

  7. oracle数据库插入多表,在Oracle数据库中插入嵌套表

    我是PL/SQL数据库的新学习者,这是一种给apex.oracle.com上的数据库应用指定序列的练习.然后我创建了表格,但是当填充与插入的代码如下所示,应用赋予错误,表你不介意,我需要你的帮助在Or ...

  8. Java向word中插入Excel文件对象

    前言: 在word文件中,虽然也有表格.但是有时我们想要将Excel中表格的大量数据直接插入到word文档中,这就需要用到word的插入对象的功能,也就是直接将Excel文件当做对象插入到word中. ...

  9. 使用freemarker插入多行数据到word中

    使用freemarker向word中插入多列表格,需要以下条件 1)需要在模板中加入<#list listTest as listKey>标签,标识插入多行 1 <#-- 由于要插入 ...

最新文章

  1. 二叉树的层序遍历 II
  2. learn python the hard way习题31~40总结以及列表的扩展知识
  3. vue 组件之间函数传递_组件之间相互传递参数
  4. anaconda镜像
  5. 全局变量-函数内部不允许修改局部变量的值
  6. Learning representations by back-propagating errors原文解读
  7. Linux C/C++多线程pthread实例
  8. zhajinhua2012邮件等网络服务的广泛应用
  9. java logger使用_这才是JAVA中打印日志的正确姿势
  10. m7405d粉盒清零方法_联想打印机计数器怎么清零?一体机硒鼓怎么清零?看这一篇就够...
  11. 32个Python爬虫项目
  12. 洛谷P1031 均分纸牌(贪心)
  13. 打java包需要对应服务器么_java打war包、部署服务器
  14. 关于EFM32下的w25q256的使用
  15. Cadence PSpice 仿真5:运放噪声仿真实战图文教程
  16. 嵌入式处理器用能量采集技术特别报告
  17. GPS导航电文——第二子帧数据解析
  18. javaweb学习笔记(佟刚老师笔记)
  19. 【Pytorch】AWSnet论文解读与实验复现
  20. angular2入门-第一个angular2 App

热门文章

  1. 关于ajax同步异步处理循环遍历及push时发生的疑问
  2. GoogLeNet 网络简介
  3. 复制mysql 搬家_mysql数据库搬家,可以直接复制数据库文件吗
  4. php explode函数 中文,php explode() 函数定义与用法汇总(2021)
  5. 如何设置停止更新支持的ubuntu更新源
  6. 大型计算机 水冷,一种大型计算机水冷式散热机箱
  7. 计算机电脑硬盘怎么删除内存,电脑虚拟内存怎么删除
  8. 复古情调效果器插件 XLN Audio RC-20 Retro Color 1.0.5 WiN-MAC
  9. HTML5移动的代码,HTML5实现一个能够移动的小坦克示例代码
  10. python面向对象编程教程入门_python入门教程09-01 (python语法入门之面向对象编程)...