2014-09-10 29 views
1

我想上傳非常大的文件大於1GB。我使用servlet api中的MultipartConfigHttpServletRequest.getPart(String)。我部署在我的服務器上,並試圖上傳文件,其工作就像一個魅力。MultipartConfig中沒有提及位置的缺點是什麼?

然後我繼續閱讀關於MultipartConfig here。我明白,當大文件上傳時,它會在達到閾值時將文件的一部分寫入臨時位置。之後我們必須使用part.delete()刪除臨時文件。

如果我不想提及臨時位置怎麼辦?上傳大文件時會在我的應用程序中發生什麼壞事?我不想提及臨時地點,因爲我們不能保證生產環境。

+0

我認爲這歸結爲「位置=」是什麼意思?服務器進程的當前文件夾?默認的臨時文件夾? – 2014-09-10 09:50:40

+0

位置用於臨時存儲文件,同時處理部件或文件大小超過指定的fileSizeThreshold設置。 api文檔還提到默認的臨時位置是「」。所以我認爲沒有臨時的位置是默認的。 – 2014-09-10 09:57:29

+0

你可以嘗試用'location =「」'和一個小的最大大小來強制服務器創建臨時文件,看看它會做什麼? – 2014-09-10 10:06:20

回答

1

我不認爲沒有指定任何臨時位置會有任何問題。 Servlet規範3.0規定每個servlet上下文應該有一個臨時工作目錄。因此,默認情況下,所有零件都保存到供應商特定的臨時工作目錄中。