您可以從單個<s:file>
元素with multiple="multiple"
like described here上傳多個文件。
您還可以以相同的方式上傳多個<s:file>
元素(允許每個文件爲單個文件)中的多個文件,處理<s:file>
的名稱以指向Action列表。
你真的想上傳一個List
S的的File
小號Lists
?
如果是的話,我建議你到一個對象模型,像MyFileListObject
,包含所需要的數據列表:
class MyFileListObject {
private List<File> files;
private List<String> filesContentType;
private List<String> filesFileName;
/* getters and setters */
}
,然後露出List<MyFileListObject>
通過行動。
或者,您可以更造粒它,定義一個新的對象,像MyFileObject
,
class MyFileObject {
private File files;
private String filesContentType;
private String filesFileName;
/* getters and setters */
}
,在MyFileListObject
上市:
class MyFileListObject {
private List<MyFileObject> files;
/* getter and setter */
}
,然後通過行動暴露List<MyFileListObject>
。
但對我來說似乎矯枉過正...哪種頁面應該讓許多<input type="file"/>
每個文件上傳多個文件?
請在發佈後考慮查看您的問題;你會注意到你的JSP片段是不可見的。你應該有一個使用普通S2集合字段命名語法的文件映射。 –
使用Struts 2進行多文件上傳:http://geekonjava.blogspot.com/2015/07/multiple-file-upload-using-struts-2.html – GeekOnJava
@GeekOnJava或http://stackoverflow.com/a/17212916/1654265;)順便說一句好文章 –