单个文件上传action的实现:
页面:
<form action="upload.action" method="post" enctype="multipart/form-data">
<input type="file" name="upload"/><br>
<input type="submit" value="提交"><span style="color:red;">${result }</span>
</form>
action实现:
public class FileUploadAction extends ActionSupport {
/**
* 单个文件上传
*/
private File upload;
private String uploadContentType;
private String uploadFileName;
public File getUpload() {
return upload;
}
public void setUpload(File upload) {
this.upload = upload;
}
public String getUploadContentType() {
return uploadContentType;
}
public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}
public String getUploadFileName() {
return uploadFileName;
}
public void setUploadFileName(String uploadFileName) {
this.uploadFileName = uploadFileName;
}
String result;
public String execute() throws Exception{
String path=ServletActionContext.getServletContext().getRealPath("/")+"images";
File file = new File(path);
if(!file.exists()){
file.mkdir();
}
FileUtils.copyFile(upload, new File(file, uploadFileName));
result="struts2上传成功";
return SUCCESS;
}
}
批量上传:
页面:
<form action="upload.action" method="post" enctype="multipart/form-data">
<input type="file" name="upload"/><br>
<input type="file" name="upload"/><br>
<input type="file" name="upload"/><br>
<input type="submit" value="提交"><span style="color:red;">${result }</span>
</form>
action实现:
private List<File> upload;private List<String> uploadContentType;
private List<String> uploadFileName;
public List<File> getUpload() {
return upload;
}
public void setUpload(List<File> upload) {
this.upload = upload;
}
public List<String> getUploadContentType() {
return uploadContentType;
}
public void setUploadContentType(List<String> uploadContentType) {
this.uploadContentType = uploadContentType;
}
public List<String> getUploadFileName() {
return uploadFileName;
}
public void setUploadFileName(List<String> uploadFileName) {
this.uploadFileName = uploadFileName;
}
String result;
public String execute() throws Exception{
String path=ServletActionContext.getServletContext().getRealPath("/")+"images";
File file = new File(path);
if(!file.exists()){
file.mkdir();
}
for(int i=0;i<upload.size();i++){
FileUtils.copyFile(upload.get(i), new File(file, uploadFileName.get(i)));
}
result="struts2上传成功";
return SUCCESS;
}