锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
浜屻佸彲閫夐厤緗畉ools.xml
ServletFileUpload.isMultipartContent(request)
媯嫻媟equest涓槸鍚﹀寘鍚湁multipart鍐呭
2銆佸鏋滄湁錛岀敓鎴怐iskFileItemFactory宸ュ巶灝嗚繘琛岀浉鍏崇殑璁劇疆
DiskFileItemFactory factory = new DiskFileItemFactory();
// maximum size that will be stored in memory
factory.setSizeThreshold(maxMemSize);
// Location to save data that is larger than maxMemSize.
factory.setRepository(new File("d:/"));
3銆佺敓鎴愪笂浼燬ervletFileUpload綾伙紝騫跺皢DiskFileFactory宸ュ巶浼犵粰瀹冿紝騫跺ServletFileUpload榪涜閰嶇疆
// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);
// maximum file size to be uploaded.
upload.setSizeMax(maxFileSize);
4銆佷粠request寰楀埌涓婁紶鐨勬枃浠跺垪琛?/p>
// Parse the request to get file items.
List fileItems = upload.parseRequest(request);// Process the uploaded file items
Iterator i = fileItems.iterator();
5銆佸鐞嗘枃浠訛細鍐欏叆鎴栬呭叾浠栨搷浣?/p>
while (i.hasNext()) {
FileItem fi = (FileItem) i.next();
if (!fi.isFormField()) {
// Get the uploaded file parameters
String fieldName = fi.getFieldName();
String fileName = fi.getName();
String contentType = fi.getContentType();
boolean isInMemory = fi.isInMemory();
long sizeInBytes = fi.getSize();
// Write the file
if (fileName.lastIndexOf("\\") >= 0) {
file = new File(
filePath
+ fileName.substring(fileName
.lastIndexOf("\\")));
} else {
file = new File(
filePath
+ fileName.substring(fileName
.lastIndexOf("\\") + 1));
}
fi.write(file);
out.println("Uploaded Filename: " + fileName + "<br>");
}
}}
璇存槑錛?/font>
FileItem鎺ュ彛鏄鐢ㄦ埛涓婁紶鏂囦歡鐨勫皝瑁?/font>
DiskFileItemFactory瀹炵幇浜咶ileItemFactory鎺ュ彛錛屼富瑕佹柟娉曟湁public FileItem createItem(String fieldName, String contentType, boolean isFormField, String fileName)
ServletFileUpload浠嶧ileUpload緇ф壙錛岃孎ileUpload鍙堜粠FileUploadBase緇ф壙錛屽姛鑳斤細鍒嗘瀽浼犲叆鐨剅equest瀵硅薄銆佸緱鍒版枃浠跺垪琛‵ileItemIterator鈥︹?/font>