您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關SpringMVC中的異步上傳功能怎么利用MultipartFile 實現,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
1.添加pom依賴
添加pom依賴,因為用的ajax,數據需要轉成json的格式進行傳輸,所以還有加入一個JSON jar包:
<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.1.37</version> </dependency>
2.修改配置文件
applicationContext.xml里面需要加上:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="defaultEncoding" value="UTF-8"></property> <property name="maxUploadSize" value="5400000"></property> </bean>
3.前端頁面上
前端頁面:
<form id="uploadForm" name="uploadForm" enctype="multipart/form-data"> <input name="messageContent" value="多個參數的情況下"> <label>文件</label> <input type="file" name="file"> <button class="btn" type="button" id="doSave">提交</button> </form> </body> </html>
需要加入的JS:
<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script> <script type="text/javascript" src="js/jquery-ui.min.js"></script> <script type="text/javascript" src="js/jquery.form.js"></script>
JS方法:
<script> $(function() { $("#doSave") .click( function() { $("#uploadForm") .ajaxSubmit( { type : 'post', url : "/tmpInfo/method2.do", //data: //注意只要是寫在表單里面的,都不需要加這個屬性。在controller中可以根據@RequestParam String str獲取到屬性值。 contentType : "application/x-www-form-urlencoded; charset=utf-8", success: function(data) { //接受到的data還只是一個字符串,需要轉成json對象 var obj = JSON.parse(data); if(obj.flag==true){ alert("上傳成功"); }else{ alert("error"); } }, error: function (data)//服務器響應失敗處理函數 { alert("出錯"); } }); }); });
controller代碼:
@RequestMapping("/method2") @ResponseBody public String method2(@RequestParam MultipartFile file, @RequestParam String messageContent ) { //多個參數的話只要多個@RequestParam即可,注意參數名要和表單里面的屬性名一致 JSONObject json =new JSONObject(); System.out.println(messageContent); String orgiginalFileName = ""; int m =new Random().nextInt(100)+10; System.out.println("m="+m); String path="D:/"+m+"b.txt"; try { File newFile =new File(path); file.transferTo(newFile); String fileName = file.getName(); InputStream inputStream = file.getInputStream(); String content = file.getContentType(); orgiginalFileName = file.getOriginalFilename(); System.out.println("fileName: "+fileName+", inputStream: "+ inputStream +"\r\n content: "+content+", orgiginalFileName: ="+ orgiginalFileName +"\r\n projectName: "); } catch (IOException e) { e.printStackTrace(); } json.put("flag", true); json.put("message", "success"); System.out.println(json.toJSONString()); return json.toJSONString(); }
以上就是SpringMVC中的異步上傳功能怎么利用MultipartFile 實現,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。