zoukankan      html  css  js  c++  java
  • Struts2文件下载

     <struts>
         <package name="default" extends="struts-default">
            <action name="download" class="action.DownloadAction">
               <result type="stream">
                                    <param name="contentType">application/octet-stream</param>
                                    <param name="inputName">inputStream</param>
                                    <param name="contentDisposition">attachment;filename="${fileName}"</param>
                                    <param name="bufferSize">4096</param>
               </result>
            </action>
         </package>
     </struts>

    当result为stream类型时,struts2会自动根据你配置好的参数下载文件。

    其中主要使用的参数是:
    contentType 指定下载文件的文件类型 —— application/octet-stream 表示无限制
    inputName 流对象名 —— 比如这里写inputStream,它就会自动去找Action中的getInputStream方法。
    contentDisposition 使用经过转码的文件名作为下载文件名 —— 默认格式是attachment;filename="${fileName}",将调用该Action中的getFileName方法。
    bufferSize 下载文件的缓冲大小

        package action;
         
        import java.io.InputStream;
         
        import org.apache.struts2.ServletActionContext;
         
        public class DownloadAction {
               
                private String fileName;
               
                public void setFileName(String fileName) {
                        this.fileName = fileName;
                }
                public InputStream getInputStream() {
                        return ServletActionContext.getServletContext().getResourceAsStream("/" + fileName);
                }
               
                public String execute(){
                        return "success";
                }
         
        }
  • 相关阅读:
    uva10129 PlayOnWords(并查集,欧拉回路)
    UVA439 knightMoves (A*启发搜索)
    uva297 Quadtrees (线段树思想,区间操作)
    [uva]AncientMessages象形文字识别 (dfs求连通块)
    [uva816]AbbottsRevenge Abbott的复仇(经典迷宫BFS)
    [dp][uestc]L
    [dp][uestc oj]J
    [uestc oj]H
    [dp uestc oj] G
    [dp]uestc oj 邱老师看电影
  • 原文地址:https://www.cnblogs.com/Alandre/p/3428178.html
Copyright © 2011-2022 走看看