Struts2 上传和下载文件(三)
?
三、 同时上传多个文件
?
Struts 2 很方便实现多个文件上传,这个和之前上传单个文件并没有太大区别。
下面介绍使用 数组 和 List 处理同时上传多个文件的方式
?
3.1 使用数组同时上传多个文件
如果页面上有 3 个文件上传,正如前面介绍,当然可以为上传页面中的每个文件域指定 3 个属性:文件名、文件类型、文件内容。但这样会使代码臃肿,编程复杂化。
因此,下面以数组来封装 3 个文件域。为了让数组一次封装 3 个文件域,需要将 3 个文件域的 name 设置成相同的。如下:
?
upload.jsp
?下面需要 3 个数组分别封装文件名、文件类型、文件内容
?
UploadAction.java
?struts.xml
?上面 Action 在下载前先进行权限检查,如果要下载文件的浏览者没有登录,或者用户名不是 crazyit, Action 将返回一个 input.jsp
?
input.jsp
?strutsDown.html
<li> 下载Struts2的Logo的压缩文件:<a href="download2.action">下载压缩文件</a> </li>??
?
?
?
?
?
?
?
?
?