servlet檔案上傳

2021-06-20 19:39:53 字數 1283 閱讀 3409

// 構造出檔案工廠,用於存放jsp頁面中傳遞過來的檔案

diskfileitemfactory factory = new diskfileitemfactory();

// 設定快取大小,如果檔案大於快取大小時,則先把檔案放到快取中

factory.setsizethreshold(4 * 1024);

// 設定上傳檔案的儲存路徑

factory.setrepository(f);

// 產生servlet上傳物件

servletfileupload upload = new servletfileupload(factory);

upload.setheaderencoding("utf-8");

// 設定可以上傳檔案大小的上界4mb

upload.setsizemax(4 * 1024 * 1024);

try

filename = util.getimagename(filename);

string filepath = projectpath + fieldname;

file uf = new file(filepath);

// 更改檔案的儲存路徑,以防止檔案重名的現象出現

if (!uf.exists())

// 此輸出路徑為儲存到資料庫中photo欄位的路徑

string insertdb = filepath + "\\" + filename;

system.out.println("檔案路徑:" + insertdb + ":"

+ insertdb.length());

file uploadedfile = new file(filepath, filename);

try

item.write(uploadedfile);

message = "上傳檔案成功

基本資訊如下:

檔名:"

+ filename + "

檔案型別:" + contenttype

+ "檔案大小:" + filesize + "b";

imagepath = filename;

i = 1;

} catch (exception e)

} else

} else

}}catch (fileuploadexception e) catch (unsupportedencodingexception e)

jsp form新增屬性enctype="multipart/form-data"

Servlet 檔案上傳

servlet 檔案上傳 1.使用inputstream 通過 request.getinputstream 獲取檔案輸入流,上傳解析 如下 但是這種方法上傳的檔案與檔案之間用分隔符隔開,導致解析檔案內容比較困難。獲取上傳檔案,列印檔案內容如下 7df13128408c8 content dispo...

servlet 檔案上傳

org.apache.commons.fileupload 檔案上傳的細節處理 1.上傳檔名的中文亂碼問題 解決方案 呼叫servletfileupload.setheaderencoding方法即可 2.上傳表單中的普通字段亂碼問題 解決方案 獲取資料時呼叫fileitem.getstring c...

Servlet檔案上傳

一 jsp內容 1.method post 2.enctype multipart form data 二 servlet 1.首先需要用到兩個第三方jar包 2.主要用到三個類 diskfileitemfactory 生產fileitem的工廠 三 解決檔名亂碼問題 1.解決檔名中文亂碼 requ...