`

Struts导出数据并以CSV格式文件下载(StreamResult)

阅读更多

给力吧!            红番薯

ExtJs前端代码:
this.exportGroup = function() {
var selectionModel = groupGrid.getSelectionModel();// 获取选中模式
var row = selectionModel.getSelected();// 获取被选中的行
var id = row.get("id");// 获取被选中的记录ID
window.location.href = ctx+ '/OXOXAction!oxoxMethod.action?id='+ id;
}

OXOXAction类的oxoxMethod方法:
public String oxoxMethod() {
....//获取数据库记录集合
StringBuffer strBuffer = new StringBuffer();
while(it.hasNext()){
xxx;//获取某个具体信息,如用户号码
strBuffer.append(xxx+"\n");//一行一个,如用户号码
}
setCsvStream(new StringBufferInputStream(strBuffer.toString())); 
//必须 用于配置streamResult的inputName参数
setContentDisposition("attachment;filename="+XXX+".csv");        
//必须 用于配置streamResult的contentDisposition参数
return "csv";
}

struts2.xml配置:
<action....>
<result name="csv" type="stream">
<param name="contentType">APPLICATION/OCTET-STREAM</param>   
<param name="inputName">csvStream</param>                 
</result>
</action>

在孙鑫的一本书《Struts 2深入详解 》中提到:
StreamResult结果类型利用HttpServletResponse对象返回的ServletOutputStream对象向客户端输出下载文件的二进制数据。(这个有空的话,Ricki在后面再说)

 

0
3
分享到:
评论

相关推荐

    struts2实现文件上传下载

    文件上传和下载是Web应用程序中的常见功能,对于用户交互和数据交换至关重要。本篇文章将详细探讨如何在Struts2框架下实现文件的上传与下载。 首先,我们需要了解Struts2中的文件上传机制。Struts2提供了`...

    struts1和struts2分别实现文件上传下载功能

    用户发起下载请求时,Action会重定向到这个Servlet,Servlet读取文件并设置响应头,包括Content-Disposition(指示浏览器以附件形式下载)和Content-Type(指定文件类型)。最后,Servlet将文件内容写入到响应输出流...

    struts2+poi实现excel表格导出

    Struts2和Apache POI是Java开发中两个重要的工具,它们在处理Web应用程序中的数据导出,特别是Excel表格导出方面发挥着重要作用。Struts2是一个基于MVC设计模式的Web应用框架,它极大地简化了Java Web开发。而Apache...

    struts2-文件下载

    Struts2 文件下载是Web应用开发中的一个常见需求,它允许用户从服务器上获取并保存文件到本地。在Struts2框架中,实现文件下载主要涉及以下几个关键知识点: 1. **MIME类型**:MIME(Multipurpose Internet Mail ...

    struts2文件下载的参数

    本文将深入探讨“Struts2文件下载的参数”这一主题,包括如何设置和使用这些参数来实现安全、高效的文件下载服务。 首先,我们需要了解Struts2中的Action类。Action类是处理用户请求的核心,它通过配置在struts.xml...

    Struts2文件上传与下载

    文件下载在Struts2中涉及`StreamResult`结果类型,用于将文件流发送到客户端。以下是一个基本的文件下载流程: 1. **创建Action**:定义一个Action,该Action将获取要下载的文件路径或者流,并设置响应的Content-...

    struts2文件下载

    在Struts2中,文件上传和下载是常见的功能,尤其在处理用户交互和数据交换时非常有用。下面将详细介绍如何在Struts2中实现文件的上传和下载。 一、文件上传 1. **配置Struts2核心过滤器**:首先,确保在web.xml中...

    Struts2全注解方式实现文件上传与下载

    因此,我们可能需要编写一个方法来获取文件的完整路径,或者使用数据库来存储文件元数据,以便于查找和管理。 总结一下,本资源中涉及的Struts2全注解方式实现文件上传与下载的关键点包括: 1. 使用`@Action`和`@...

    jsp上传下载文件源代码,通过struts.xml控制在100M以内

    总之,这个项目是关于如何在Java Web环境中使用JSP和Struts2框架实现文件上传和下载功能的实例,同时也展示了如何通过Struts配置限制文件大小,以防止过大文件导致的服务器资源占用过高。通过对这些技术的深入理解和...

    struts文件带进度条上传,文件下载

    在本主题中,“struts文件带进度条上传,文件下载”指的是在Struts框架下实现带有进度条的文件上传与下载功能,同时解决中文乱码问题,并确保兼容各种浏览器。 **文件上传** 在Struts中,文件上传通常使用`struts2...

    Struts2.0 文件上传与下载全解析

    在Struts2中,文件上传和下载是常见的需求,尤其对于处理用户交互和数据交换的Web应用来说。本篇文章将全面解析Struts2.0中的文件上传和下载流程。 ### 文件上传 文件上传的核心在于`multipart/form-data`编码类型...

    struts2实现的文件上传下载,上传文件重命名(按时间戳)

    Struts2是一个强大的MVC框架,广泛应用于Java Web开发中,包括文件的上传与下载功能。在本项目中,我们关注的是如何利用Struts2实现文件上传并重命名(按时间戳),以及如何进行文件下载。 一、Struts2文件上传 在...

    Struts中 下载时点击取消异常解决包

    Struts2是一个流行的Java web框架,它为开发者提供...总的来说,解决Struts2文件下载取消时的异常,关键在于正确管理和控制文件流,以及及时响应用户的行为变化。通过以上策略,我们可以使应用更加健壮,提高用户体验。

    struts2.0文件上传下载

    Struts2.0 文件上传下载是Java Web开发中常见的功能,它涉及到客户端与服务器的数据交互。Struts2作为一款强大的MVC框架,提供了方便的文件上传和下载支持。本篇文章将深入探讨Struts2实现文件上传下载的核心概念、...

    Struts2 文件上传,下载,删除(四十一)

    在本教程中,我们将深入探讨Struts2中关于文件上传、下载和删除的核心概念和技术。这些功能在现代Web应用程序中至关重要,因为用户经常需要上传文件(如图片、文档等),或者从服务器下载资源。 **1. 文件上传** ...

    Struts2 下载取消报异常最终解决办法

    - Struts2提供了方便的Action类和结果类型,如`StreamResult`,来处理文件下载。通过设置HTTP响应头,如`Content-Disposition`和`Content-Type`,告知浏览器以附件形式下载文件。 - 在下载过程中,通常会创建一个...

    struts2 文件上传与下载

    当用户提交表单时,Struts2会自动处理文件数据,并将其绑定到Action类的属性上。 接下来,你需要在服务器端处理上传的文件。这可能包括验证文件类型、大小等,然后将文件保存到服务器的指定位置。在Action类的...

    struts 文件上传及下载实例

    本文将深入探讨Struts中的文件上传与下载功能,这对于任何Java Web开发者来说都是至关重要的知识点。 首先,让我们了解一下文件上传。在Web应用中,文件上传功能允许用户从本地计算机选择文件并将其发送到服务器。...

    struts2上传下载+前端剪切图片

    Struts2提供了`StreamResult`结果类型来处理文件下载。在Action中,你需要获取要下载文件的路径或流,然后在返回结果时指定`StreamResult`,并设置相应的参数如文件名、内容类型等。这样,用户浏览器将触发文件下载...

Global site tag (gtag.js) - Google Analytics