快速业务通道

浅谈Struts2下载文件的方法实现 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

浅谈Struts2下载文件的方法实现

时间:2011-10-02

Struts2下载文件实现的说明

contentType

内容类型,和互联网MIME标准中的规定类型一致,例如text/plain代表纯文本,text/xml表示XML, image/gif代表GIF图片,image/jpeg代表JPG图片

inputName

下载文件的来源流,对应着action类中某个类型为Inputstream的属性名,例如取值为inputStream的 属性需要编写getInputStream()方法

contentDisposition

文件下载的处理方式,包括内联(inline)和附件(attachment)两种方式,而附件方式会弹出文件保存 对话框,否则浏览器会尝试直接显示文件。取值为:

attachment;filename="struts2.txt",表示文件下载的时候保存的名字应为struts2.txt。如果直接 写filename="struts2.txt",那么默认情况是代表inline,浏览器会尝试自动打开它,等价于这样的写法 :inline; filename="struts2.txt"

bufferSize

下载缓冲区的大小

Struts2下载实现源代码

< ?xml version="1.0" encoding="UTF-8" ?>"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN""< A href="http://struts.apache.org/dtds/struts- 2.0.dtd"> http://struts.apache.org/dtds/struts-2.0.dtd< /A>">     < PACKAGE name="default" extends="struts-default">< !-- 在这里添加Action定义 --> < !-- 简单文件下载 --> < ACTION class=example.FileDownloadAction name="download"> < RESULT name="success" type="stream"> < PARAM name="contentType">text/plain< /PARAM> < PARAM name="inputName">inputStream< /PARAM> < PARAM name="contentDisposition">attachment;filename="struts2中文.txt"< /PARAM> < PARAM name="bufferSize">4096< /PARAM> < /RESULT> < /ACTION> < BR>        < !-- 文件下载,支持中文附件名 --> < ACTION class=example.FileDownloadAction2 name="download2"> < !-- 初始文件名 --> < PARAM name="fileName">Struts中文附件.txt< /PARAM> < RESULT name="success" type="stream"> < PARAM name="contentType">text/plain< /PARAM> < PARAM name="inputName">inputStream< /PARAM> < !-- 使用经过转码的文件名作为下载文件名,downloadFileName属性 对应action类中的方法 getDownloadFileName() --> < PARAM name="contentDisposition">attachment;filename="${downloadFileName}"< /PARAM> < PARAM name="bufferSize">4096< /PARAM> < /RESULT> < /ACTION> < !-- 下载现有文件 --> < ACTION class=example.FileDownloadAction3 name="download3"> < PARAM name="inputPath">/download/系统说明.doc< /PARAM> < !-- 初始文件名 --> < PARAM name="fileName">系统说明.doc< /PARAM> < RESULT name="success" type="stream"> < PARAM name="contentType">application/octet-stream;charset=ISO8859-1< /PARAM> < PARAM name="inputName">inputStream< /PARAM> < !-- 使用经过转码的文件名作为下载文件名,downloadFileName属性 对应action类中的方法 getDownloadFileName() --> < PARAM name="contentDisposition">attachment;filename="${downloadFileName}"< /PARAM> < PARAM name="bufferSize">4096< /PARAM> < /RESULT> < /ACTION> < /PACKAGE>

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号