//org.apache.commons.fileupload
private Map getRequestParamaterMap(HttpServletRequest request) {
Map requestParamaterMap = new HashMap();
DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory();
// 指定在内存中缓存数据大小,单位为byte
diskFileItemFactory.setSizeThreshold(1024000);
// 指定上传文件的临时目录
diskFileItemFactory.setRepository(tempDir);
ServletFileUpload servletFileUpload = new ServletFileUpload(diskFileItemFactory);
try {
List fileItemsList = servletFileUpload.parseRequest(request);
for (FileItem fileItem : fileItemsList) {
requestParamaterMap.put(fileItem.getFieldName(), fileItem);
}
} catch (Exception e) {
e.printStackTrace();
}
return requestParamaterMap;
}
//取值
String pkCollectItem = requestParamaterMap.get("pk_collect_item_base").getString(Constants.SYSTEM_CODING);
本文介绍了一种使用Apache Commons FileUpload组件实现文件上传的方法,并详细展示了如何通过自定义设置来控制上传过程中的缓存大小及临时目录。此外,还提供了从HTTP请求中解析并获取文件项的具体实现。

被折叠的 条评论
为什么被折叠?



