由于项目需要实现此功能,于是从网上找了下相关资料,据我了解目前有如下3种方法用于实现:
1-apache的POI,此方法对Excel的导出做的很好,目前对Word的导出方面的功能尚未完全。
2-纯JavaScript脚本实现。主要通过客户端调用本机Office组件来实现。
3-在JSP页面引入头文件实现。
纯JavaScript脚本实现细节方面大体是创建一个word组件ActiveXObject('Word.Application'),用js通过表ID取得表内容然后保存到word,要注意的是js实现有很多不好的地方,例如Internet选项需要把ActiveX空间全部启用,安全级别设置为中。这样的话岂不是每台机器都要配置一下。其次每次生成word文档以后弹出对话框(无法保存此文件,因为它已在别处打开(C:\...\STARTUP\Powerword.dot)),出现此问题就需要把C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP下的Powerword.dot文件删除,每次遇到此问题就需要删除文件来解决,十分不方便。
JSP页面引入来实现Word保存就方便多了,但是也有不足的地方,首先如果需要引入
<meta http-equiv="Content-Type" content="application/msword; charset=gb2312" />
如果需要下载的话就引入
<%@ page contentType="application/msword; charset=gb2312" %>
其实如果大家用框架做就方便多了,比如Struts2。在Action里直接写如下代码:
if(out!=null){
String fileName="";
fileName+="评价报告.doc";
try {
HttpServletResponse response = ServletActionContext.getResponse();
response.setHeader("Content-disposition","attachment; filename="+new String(fileName.getBytes("GB2312"), "8859_1"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
out是jsp页面表单元素,一个button,用于提交表单到相应Action进行Word下载。Action设置jsp页面头文件。这样每次点击button就可以把相应jsp页面的内容保存到Word中并且支持下载,Word中内容并且是可编辑状态。
不足的地方在于由于表内容是动态生成,有的需要先查看在下载Word,就需要另外建立一个新JSP页面进行Word下载,当然首先要在struts.xml里配置好页面转向。
新建立的页面传值同查看页面要保持一样。
分享到:
相关推荐
#### 一、使用JSP生成Word文档 在JSP中生成Word文档可以通过设置正确的`content-type`来实现。具体来说,只需要在JSP页面的头部添加以下指令: ```jsp <%@page contentType="application/msword" pageEncoding=...
3. **生成Word文档**:有两种主要的方法。一种是使用模板技术,如Apache POI库,它可以读取和写入Microsoft Office格式的文件,包括Word文档。另一种是直接生成HTML,然后通过浏览器的“另存为”功能将其保存为Word...
通过上述步骤,你可以在JSP页面中成功嵌入Word文档。然而,实际应用中还需要考虑错误处理、性能优化以及用户体验等多个方面。在选择技术解决方案时,要综合评估项目需求、资源限制和长期维护成本。
首先,我们要明白,JSP生成Word或Excel的基本原理是通过生成特定的文件格式内容(如Word的.doc或Excel的.xls/xlsx),然后通过HTTP响应将这些内容发送到客户端,由浏览器解析或保存为本地文件。 一、生成Word文档 ...
标签中的"jsp展示word"表明我们要在JSP页面上实现这个功能,这通常涉及Servlet的使用,Servlet负责处理后端逻辑,如打开和处理Word文档,然后将结果传递给JSP页面进行展示。 总的来说,实现"Java EE中jsp原格式展示...
Java 生成复杂 Word 文档存在许多难点,例如 POI 读写 Word 文档的限制、iText 操作 Excel 的局限性、直接通过 JSP 输出样式的不达标等。这些难点使得生成复杂 Word 文档变得非常困难。 知识点2: 使用 Office 2003 ...
filename=yourfilename.docx",这样浏览器会弹出保存对话框,让用户下载生成的Word文档。 5. 写入响应流:将生成的Word文档写入到HTTP响应流中,完成导出过程。 描述中提到的“不支持图片”,是因为Apache POI...
这种技术的应用场景广泛,如批量生成报告、个性化合同生成、邮件模板等,尤其在需要大量动态生成Word文档的场景下,它能显著提高效率并减少人工错误。 在提供的`VelocityDemo`文件中,可能包含了实现这个功能的示例...
要在JSP中生成Word(.doc或.docx)或Excel(.xls或.xlsx)文件,我们需要使用一个名为Apache POI的Java库。Apache POI是Apache软件基金会的一个项目,专门用来读写Microsoft Office格式的文件,包括Word、Excel和...
Java对PageOffice编程,从空白的word模板动态生成word文件,填充文本内容、图片,同时设置文本的字体、段落、格式。 PageOffice是标准Java组件,标准JSP Tag标签方式引用,完美支持Eclipse、MyEclipse等开发工具。 ...
在这个上下文中,它可能是Swagger Word文档生成器的主入口点,用户可能通过浏览器访问此页面来输入Swagger JSON的URL,然后程序会根据这个URL生成Word文档。 "WEB-INF" 目录是Java Web应用的标准组成部分,其中包含...
通过POI,我们可以读取Word文档的内容,并将其转换为HTML格式,然后在JSP页面上显示。 例如,以下是一个简单的步骤: 1. 引入Apache POI的依赖库到项目中。 2. 使用POI的API打开Word文件,如`HSSFWorkbook`或`...
本文实例讲述了JSP生成WORD文档,EXCEL文档及PDF文档的方法。分享给大家供大家参考,具体如下: 在web-oa系统中,公文管理好象不可或缺,有时需要从数据库中查询一些数据以某种格式输出来,并以word文档的形式展现,...
### JSP实现针对Excel及Word文档的打印方法详解 #### 一、背景介绍 随着办公自动化的需求日益增加,如何高效地处理Word与Excel等Office文档成为了一项重要的技能。利用JSP技术,我们可以轻松实现对这些文档的动态...
以下是一个简单的Java代码示例,展示了如何使用FreeMarker生成Word文档: ```java public class DocumentHandler { private Configuration configuration = null; public DocumentHandler() { configuration = ...
4. **用户编辑**: 用户在浏览器中看到的Word文档是PageOffice组件在服务器端模拟生成的,用户的所有编辑操作都会实时同步到服务器端的Word文档。 5. **保存文档**: 当用户完成编辑并点击“保存”按钮时,JavaScript...
### jsp页面中的Table数据导出为Word文档 在日常工作中,经常需要将网页上的数据导出到其他格式,如Word或Excel等,以便于进一步处理或分享。本文主要介绍如何利用JSP技术将页面中的表格(Table)数据导出为Word...