文件上傳與普通表單數據提交本質不同:文件以二進制形式存儲,需專用組件處理。SmartUpload 是一款經典、輕量的 JSP 文件上傳下載組件,雖官網已關閉,但因簡易好用至今仍廣泛應用。
本例演示將桌面圖片 dahai.jpg 上傳至 upload 目錄。
關鍵點:採用 POST 方法,設置 enctype="multipart/form-data" 以二進制形式提交。
<form action="smart_01.jsp" method="post" enctype="multipart/form-data">
請選擇要上傳的文件:<input type="file" name="pic">
<input type="submit" value="上傳">
</form>
注意:GET 方式受 URL 長度限制,不適合大文件上傳;multipart/form-data 確保二進制數據正確傳輸。
upload 文件夾存放上傳文件。
SmartUpload.jar 到項目 WEB-INF/lib 目錄。在 JSP 中使用 SmartUpload API 接收文件流、校驗類型大小、保存至目標目錄,並返回上傳結果提示。
掌握 SmartUpload 為後續學習 Commons FileUpload、Servlet 3.0 原生上傳 API 奠定基礎。