// Check that we have a file upload request 检查是否是表单文件上请求
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
// Create a new file upload handler 创建上传对象
ServletFileUpload upload = new ServletFileUpload();
// Parse the request
FileItemIterator iter = upload.getItemIterator(request); //得到所有的上传数据
while (iter.hasNext()) { //循环上传表单的元素
FileItemStream item = iter.next();
String name = item.getFieldName(); //得到元素名
InputStream stream = item.openStream();
if (item.isFormField()) { //如果是普通元素,打印元素名与值
System.out.println("Form field " + name + " with value "
+ Streams.asString(stream) + " detected.");
} else {//如果是文件型的元素,打印元素名与文件名
System.out.println("File field " + name + " with file name "
+ item.getName() + " detected.");
// Process the input stream
...//保存文件
}
}