
文件初始化
DiskFileItemFactory factory = new DiskFileItemFactory();设置最大文件蛳
factory.setSizeThreshold(200*1024*1024);
//设置临时文件夹
File tempFile=new File("d:/");
factory.setRepository(tempFile);
factory.setSizeThreshold(200*1024*1024);
//设置临时文件夹
File tempFile=new File("d:/");
factory.setRepository(tempFile);建文件项列表
ServletFileUpload upload = new ServletFileUpload(factory);
ServletFileUpload upload = new ServletFileUpload(factory);//分析构成文件列表,把表单每个项都列表了,要进行判断
List items = upload.parseRequest(request);
Iterator iter = items.iterator();
List items = upload.parseRequest(request);
Iterator iter = items.iterator();对列表项进行处理

while (iter.hasNext()) ...{
FileItem item = (FileItem) iter.next();

while (iter.hasNext()) ...{
FileItem item = (FileItem) iter.next();//当是不是一个form项时就是一个文件项

if(!item.isFormField())...{

if(!item.isFormField())...{//获取文件名
String file=item.getName();
String file=item.getName();//对文件名进行分析
int pos = file.lastIndexOf(File.separator);

if (pos > 0) ...{
file=file.substring(pos + 1);
}
File o=new File(request.getRealPath("/upload")+File.separator+file);
int pos = file.lastIndexOf(File.separator);
if (pos > 0) ...{
file=file.substring(pos + 1);
}
File o=new File(request.getRealPath("/upload")+File.separator+file);//写入文件之中
item.write(o);
}
}


} catch (IOException e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}

catch (FileUploadException e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}

catch (Exception e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}

item.write(o);
}
}

} catch (IOException e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (FileUploadException e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (Exception e) ...{
// TODO Auto-generated catch block
e.printStackTrace();
}

本文介绍了一种使用Java Web技术实现文件上传的方法。通过DiskFileItemFactory和ServletFileUpload组件设置临时文件路径及大小阈值,并解析HTTP请求来处理表单数据与文件上传流程。

1515

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



