WebWork下载的实现

开发 后端
本文介绍如何实现WebWork下载文件。

WebWork下载文件时,首先在xwork.xml中添加以下内容:

  1. <action name="download" class="com.mycompany.action.FileDownloadAction">      
  2.             <result name="success" type="stream">      
  3.                 <param name="contentType">application/octet-stream</param>      
  4.                 <param name="inputName">inputStream</param>      
  5.                 <param name="contentDisposition">attachment;filename="${downloadFileName}"</param>      
  6.                 <param name="bufferSize">4096</param>      
  7.             </result>      
  8.         </action>     
  9. <action name="download" class="com.mycompany.action.FileDownloadAction">   
  10.    <result name="success" type="stream">   
  11.     <param name="contentType">application/octet-stream</param>   
  12.     <param name="inputName">inputStream</param>   
  13.     <param name="contentDisposition">attachment;filename="${downloadFileName}"</param>   
  14.     <param name="bufferSize">4096</param>   
  15.    </result>   
  16.   </action>  

这时需要把fileName作为参数传过来,以下是action:

  1. import java.io.FileInputStream;     
  2. import java.io.FileNotFoundException;     
  3. import java.io.InputStream;     
  4. import java.io.UnsupportedEncodingException;     
  5.     
  6. import com.opensymphony.xwork.Action;     
  7.     
  8. public class FileDownloadAction implements Action {     
  9.          
  10.     private String fileName = "";     
  11.          
  12.     public InputStream getInputStream () throws Exception {     
  13.         InputStream is = null;     
  14.         try {     
  15.             is = new FileInputStream(fileName);     
  16.         } catch (FileNotFoundException e1) {     
  17.         }     
  18.         return is;     
  19.     }     
  20.          
  21.     public String execute () throws Exception {     
  22.         return SUCCESS;     
  23.     }     
  24.          
  25.     public void setFileName (String fileName) {     
  26.         this.fileName = fileName;     
  27.     }     
  28.          
  29.     public String getFileName () {     
  30.         return fileName;     
  31.     }     
  32.     
  33.     public String getDownloadFileName () {     
  34.         String downFileName = fileName;     
  35.         try {     
  36.             downFileName = new String(downFileName.getBytes(), "utf8");     
  37.         } catch (UnsupportedEncodingException e) {     
  38.             e.printStackTrace();     
  39.         }     
  40.         return downFileName;     
  41.     }     
  42. }   

至此就完成了WebWork下载。

【编辑推荐】

  1. WebWork如何实现文件上传配置过程
  2. Tapestry 5输入验证的实现方法
  3. JSP开发框架JSF对比基于Servlet的Tapestry
  4. Tapestry 5组件事件详解
  5. Tapestry5的性能改进浅析
责任编辑:雪峰 来源: JavaEye博客
相关推荐

2009-07-14 15:52:00

WebWork文件下载

2009-07-08 10:11:30

WebWork

2009-07-14 17:20:31

Webwork文件上传

2009-07-16 15:44:40

导出CSV文本WebWork

2009-07-16 15:14:27

WebWork用户登陆

2009-07-08 09:29:58

WebWork

2009-07-08 10:30:57

WebWork

2009-07-14 01:00:43

WebWorkActionConte

2009-07-16 14:08:14

webwork配置

2009-07-14 16:08:41

WebWork学习

2009-07-14 17:34:53

Webwork配置

2009-07-14 00:15:52

Webwork Act

2009-07-08 10:56:04

WebWork

2009-07-10 11:02:17

WebWork参数配置

2009-07-16 16:01:54

WebWork敏捷开发

2009-07-14 14:04:36

WebWork框架

2009-07-16 16:51:56

WebWork验证机制

2009-07-16 16:08:30

WebWork Act

2009-07-14 17:10:44

struts2webwork

2009-07-09 18:24:00

WebWork与Spr
点赞
收藏

51CTO技术栈公众号