如何HttpServletRequest文件對象并儲存
核心代碼
由于HttpServletRequest不能直接取出文件數(shù)據(jù),所以將其強制轉(zhuǎn)換為MultipartHttpServletRequest
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
List<MultipartFile> files = multipartRequest.getFiles("files");
POST
/*提交表單*/ function myupload() { $.ajax({ url:"/exUploadController.do?uploadTest", type : "POST", async: false, cache: false, //此處設(shè)置false contentType: false,//必須設(shè)置false ,formupload1表單中必須設(shè)置enctype="multipart/form-data" processData: false, //必須設(shè)置fals data :new FormData(document.getElementById("myForm")), success:function (data) { alert(data); }, error:function (XMLHttpRequest, textStatus, errorThrown) { console.log(XMLHttpRequest); console.log(textStatus); console.log(errorThrown); } }) }
Servlet
HttpServletRequest request; //獲取上傳圖片 MultipartHttpServletRequest mureq = (MultipartHttpServletRequest) request; Map<String, MultipartFile> files = mureq.getFileMap(); MultipartFile file =null; if (files != null &&files.size()> 0) { Map.Entry<String, MultipartFile> f = files.entrySet().iterator().next(); file = f.getValue(); } //獲取項目部署的路徑 String rootPath = request.getSession().getServletContext().getRealPath("/"); //獲取上傳圖片的名稱 String fileName = file.getOriginalFilename(); //獲取上傳圖片的大小 float size = file.getSize() //在path路徑下創(chuàng)建一個文件 File newFile = new File(path); //判斷文件是否存在 if(!newFile.exists()) { newFile.mkdirs();//不存在的話,就開辟一個空間 } //將上傳的文件存儲 file.transferTo(newFile);
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
網(wǎng)頁加載時頁面顯示進度條加載完成之后顯示網(wǎng)頁內(nèi)容
網(wǎng)頁加載時頁面顯示進度條(加載完成時顯示網(wǎng)頁內(nèi)容),這種效果在瀏覽網(wǎng)頁很常見,本文也介紹一種實現(xiàn)方法,需要了解的朋友可以參考下2012-12-12JS計算兩個數(shù)組的交集、差集、并集、補集(多種實現(xiàn)方式)
本文通過多種實現(xiàn)方式給大家介紹了JS計算兩個數(shù)組的交集、差集、并集、補集 的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-05-05easyui給某一個單元格的內(nèi)容增加下劃線的操作方法
在EasyUI的DataGrid組件中,你可以通過自定義單元格的渲染方式來實現(xiàn)給某一個單元格的內(nèi)容增加下劃線的效果,本文給大家介紹easyui如何給某一個單元格的內(nèi)容增加下劃線,感興趣的朋友跟隨小編一起看看吧2024-08-08