需求很簡單,就是希望 上傳文件的大小超過限制后跳轉到另一個頁面給出提示代碼如下,文件大小不超過限制時沒有問題可以跳轉到提示頁面,但是一旦超過大小(即拋出異常),頁面就顯示 “ 連接被重置 ”。@WebServlet(urlPatterns = { "/upfile" })
public class MyServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
upload.setSizeMax(1024 * 1024 * 5); // 設置單次上傳大小最大值5M
try {
//省略獲取上傳文件代碼。。。
//【成功時可以跳轉】
resp.sendRedirect(req.getContextPath()+"/index.jsp?msg=ok");
} catch (FileUploadException e) {
//【失敗時無法跳轉,且頁面顯示 連接被重置】
resp.sendRedirect(req.getContextPath()+"/index.jsp?msg=error");
}
}
}
2 回答

慕田峪9158850
TA貢獻1794條經驗 獲得超7個贊
你這樣麻煩了很多,不如在前端網頁中用js做設置,這樣可以減輕服務器壓力,也比較符合用戶習慣,你這樣做只能抓取異常來控制代碼,可是如果異常太大,是不容易控制的,望采納,我們公司就是前端控制實現的。
添加回答
舉報
0/150
提交
取消