20180704 struts笔记-文件上传下载2



2.文件下载
  (1)定义页面请求:
      示例:<a href="down?imageName=a.jpg"></a>

  (2)配置action处理类
      必须定义的属性:
          private String imageName;//获得要下载的文件名;
            private InputStream inputStream;//定义InputStream类型的属性

         //生成get/set方法
           public InputStream getInputStream(){
                String url=ServletActionContext.getServletContext().getRealPath("/文件夹名");
                BufferedInputStream br=
                new BufferedInputStream(new FileInputStream(url+"/"+imageName));
            return br;
          }


  (3)配置Struts.xml文件:
      <result type="stream">
    <!-- 设置文件的类型 -->
            <param name="contentType">application/octet-stream</param>
    <!-- 设定返回浏览器中流的名字, 参数值要和action中定义的InputStream类型的属性名相同 -->
            <param name="inputName">inputStream</param>
     <!-- attachment通知浏览器以附件的方式传递 -->
            <param name="contentDisposition">
                   attachment;filename="${fileName}"
             </param>
  <!-- 文件下载的缓冲区的大小 -->
             <param name="bufferSize">4096</param>
      </result>

猜你喜欢

转载自blog.csdn.net/chargingtime/article/details/80909489