boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(!isMultipart){
res.put("suc", "0");
res.put("error", "enctype必须是multipart/form-data");
return res;
}
try {
//获取文件对象
FileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
List<FileItem> items;
items = upload.parseRequest(request);
Iterator<FileItem> itr = items.iterator();
//依次处理每个文件 -- 可以上传多个文件和多个其他非文件字段
while(itr.hasNext()){
FileItem item=(FileItem)itr.next();
if(item.isFormField()) {//如果是普通表单项目,非文件字段。
String fieldName = item.getFieldName();
if(fieldName.equals("domain_id")) {
String domain_id = item.getString();
//domain_id不符合标准 无需解析
if(domain_id == null || domain_id.isEmpty() || Integer.parseInt(domain_id) <= 0){
res.put("suc", "0");
res.put("error", "参数domain_id非空!");
return res;
}
res.put("domain_id", domain_id);
}
}else{//如果是上传文件
//获得文件名
String fileName=item.getName();
String getFieldName=item.getFieldName();
long size=item.getSize();
// res.put("file_name", fileName);
String dsq = item.getString();
System.out.println(dsq);
String ds = new String(item.getString().getBytes("iso-8859-1"),"GBK");
}
}
} catch (FileUploadException e1) {
}catch (Exception e1) {
}
return res;
}
<div>
<form method = "post" class="upload-data-doc-form" enctype="multipart/form-data" action="${fn:getLink('csearch/Detail.do?method=docUpload')}">
<input type = "file" name = "newFile" value=""/><br>
<input id="domain_input" type = "hidden" name = "domain_id" value="${domain_id}"/><br>
<input class="upload-data-doc" type = "submit" value = "上传文件">
</form>
</div>