csq39 发表于 2017-8-1 15:48:48

zip下载说明

<p>适用版本:1.0.0_20170726</p><p><br/></p><p>1:构建方法参数</p><p>&nbsp; &nbsp; RData对象,其中:</p><p>&nbsp; &nbsp; &nbsp; key: fileName &nbsp; &nbsp;导出文件的文件名,后缀必须为zip</p><p>&nbsp; &nbsp; &nbsp; key: fileList &nbsp; &nbsp;一个list&lt;RData&gt;对象,存放需要压缩的文件列表</p><p>&nbsp; &nbsp; fileList对象中每一个item都必须为rdata对象,其需要包含</p><p>&nbsp; &nbsp; &nbsp; &nbsp;key: &nbsp; dirPath &nbsp; 表示压缩包内的文件名或者报名,必须为包内全路径名</p><p>&nbsp; &nbsp; &nbsp; &nbsp;key: file &nbsp; &nbsp; &nbsp;实际文件的全路径</p><p>&nbsp; &nbsp;&nbsp;</p><p>2:方法编写</p><p>&nbsp;与常规方法一样。;</p><p>3:方法底部</p><p>request.setAttribute(&quot;file&quot;, rdata);//必须将构造的参数放入request的file字段内</p><p>return &quot;forward:&quot;+ adminPath+&quot;/file/downloadZip&quot;;//原样复制即可</p><p><br/></p><p>示例代码</p><p>@RequestMapping(&quot;download&quot;)</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> public String download(HttpServletRequest request) throws IOException { &nbsp;</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>rdata.set(&quot;fileName&quot;, &quot;test.zip&quot;);//文件名</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>ArrayList&lt;RData&gt; fileList = new ArrayList&lt;RData&gt;();</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>rdata.set(&quot;fileList&quot;, fileList);//压缩包内文件列表</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span></p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>RData file1 = new RData();</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;dirPath&quot;, &quot;sss1/&quot;);//构建一个空的文件夹,名称为sss1,不需要建立空白文件夹则这步不需要写</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;file&quot;, &quot;/&quot;);//如果构建文件夹,则需要传入“/”</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>fileList.add(file1);</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span></p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1 = new RData();</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;dirPath&quot;, &quot;og4j.properties&quot;);//构建一个压缩包的文件,名称为log4j.properties,</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;file&quot;, &quot;D:\\T9_dntg\\T9NuoYa\\Server\\log4j.properties&quot;);//具体放入压缩包内的文件绝对地址</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>fileList.add(file1);</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span></p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1 = new RData();</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;dirPath&quot;, &quot;sss/og4j.properties&quot;);//构建一个压缩包的文件,名称为log4j.properties,包内存放位置为:sss\log4j.properties</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;file&quot;, &quot;D:\\T9_dntg\\T9NuoYa\\Server\\log4j.properties&quot;);//具体放入压缩包内的文件绝对地址</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>fileList.add(file1);</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span></p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1 = new RData();</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;dirPath&quot;, &quot;测试\\测试.xml&quot;);//构建一个压缩包的文件,名称为测试.xml,包内存放位置为:测试\测试.xml</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>file1.set(&quot;file&quot;, &quot;D:\\T9_dntg\\T9NuoYa\\Server\\log4j2.xml&quot;);//具体放入压缩包内的文件绝对地址,改文件放入包内后,会改变为dirPath指定的文件名</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>fileList.add(file1);</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span></p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;<span class="Apple-tab-span" style="white-space:pre">        </span>request.setAttribute(&quot;file&quot;, rdata);</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp; &nbsp; &nbsp;return &quot;forward:&quot;+ adminPath+&quot;/file/downloadZip&quot;;</p><p><span class="Apple-tab-span" style="white-space:pre">        </span> &nbsp; &nbsp;}&nbsp;</p><p><br/></p>
页: [1]
查看完整版本: zip下载说明