struts多文件上传案例演示(一)

form表单代码:  
<form action="${pageContext.request.contextPath }/UpfileAction.do" method="post" enctype="multipart/form-data">
  上传用户:<input type="text" name="username"><br/>
  上传文件:<input type="file" name="list[0]"><br/>
  上传文件:<input type="file" name="list[1]"><br/>
  <input type="submit" value="上传文件">
  </form>

处理代码:
public class UpfileForm extends ActionForm {
private String username;
private List list = new ArrayList();
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public FormFile getList(int index) {
return (FormFile) list.get(index);
}
public void setList(int index, FormFile file) {
this.list.add(file);
}
public List getAll(){
return list;
}
}

public class UpfileAction extends Action {

@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UpfileForm upfile = (UpfileForm) form;
System.out.println(upfile.getUsername());
List<FormFile> list = upfile.getAll();
for(FormFile file : list){
FileOutputStream out = new FileOutputStream("c:\" + file.getFileName());
InputStream in = file.getInputStream();
int len = 0;
byte buffer[] = new byte[1024];
while((len=in.read(buffer))>0){
out.write(buffer, 0, len);
}
}
return super.execute(mapping, form, request, response);
}
}
原文地址:https://www.cnblogs.com/toge/p/6114723.html