如何HttpServletRequest文件對(duì)象并儲(chǔ)存
核心代碼
由于HttpServletRequest不能直接取出文件數(shù)據(jù),所以將其強(qiáng)制轉(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(); } //獲取項(xiàng)目部署的路徑 String rootPath = request.getSession().getServletContext().getRealPath("/"); //獲取上傳圖片的名稱 String fileName = file.getOriginalFilename(); //獲取上傳圖片的大小 float size = file.getSize() //在path路徑下創(chuàng)建一個(gè)文件 File newFile = new File(path); //判斷文件是否存在 if(!newFile.exists()) { newFile.mkdirs();//不存在的話,就開辟一個(gè)空間 } //將上傳的文件存儲(chǔ) file.transferTo(newFile);
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- SpringCloud Feign傳遞HttpServletRequest對(duì)象流程
- SpringBoot實(shí)現(xiàn)任意位置獲取HttpServletRequest對(duì)象
- HttpServletRequest對(duì)象常用功能_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- HttpServletRequest對(duì)象簡(jiǎn)介_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
- HttpServletRequest對(duì)象方法的用法小結(jié)
- 解決子線程中獲取不到HttpServletRequest對(duì)象的問題
相關(guān)文章
網(wǎng)頁(yè)加載時(shí)頁(yè)面顯示進(jìn)度條加載完成之后顯示網(wǎng)頁(yè)內(nèi)容
網(wǎng)頁(yè)加載時(shí)頁(yè)面顯示進(jìn)度條(加載完成時(shí)顯示網(wǎng)頁(yè)內(nèi)容),這種效果在瀏覽網(wǎng)頁(yè)很常見,本文也介紹一種實(shí)現(xiàn)方法,需要了解的朋友可以參考下2012-12-12JS計(jì)算兩個(gè)數(shù)組的交集、差集、并集、補(bǔ)集(多種實(shí)現(xiàn)方式)
本文通過多種實(shí)現(xiàn)方式給大家介紹了JS計(jì)算兩個(gè)數(shù)組的交集、差集、并集、補(bǔ)集 的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05easyui給某一個(gè)單元格的內(nèi)容增加下劃線的操作方法
在EasyUI的DataGrid組件中,你可以通過自定義單元格的渲染方式來實(shí)現(xiàn)給某一個(gè)單元格的內(nèi)容增加下劃線的效果,本文給大家介紹easyui如何給某一個(gè)單元格的內(nèi)容增加下劃線,感興趣的朋友跟隨小編一起看看吧2024-08-08JS彈出對(duì)話框?qū)崿F(xiàn)方法(三種方式)
這篇文章主要介紹了JS彈出對(duì)話框?qū)崿F(xiàn)方法,結(jié)合實(shí)例形式分析了三種方式,包括alert、confirm及prompt,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-12-12JavaScript基礎(chǔ)入門之錯(cuò)誤捕獲機(jī)制
初級(jí)開發(fā)人員往往很少使用js的拋出和捕獲異常,但拋出和捕獲異常往往是非常必要的,這篇文章主要給大家介紹了關(guān)于JavaScript基礎(chǔ)入門之錯(cuò)誤捕獲機(jī)制的相關(guān)資料,需要的朋友可以參考下2021-08-08JS中數(shù)組常用的循環(huán)遍歷你會(huì)幾種
JS 遍歷數(shù)組(循環(huán)數(shù)組)的方式有多種,但你都知道嗎?下面這篇文章主要給大家介紹了關(guān)于JS中數(shù)組常用循環(huán)遍歷的相關(guān)資料,需要的朋友可以參考下2021-06-06