SpringMVC+easyUI實現上傳圖片功能小例子
阿新 • • 發佈:2019-02-05
jsp:
contorller層:<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <script type="text/javascript" src="${pageContext.request.contextPath}/resource/js/jquery-form.js"></script> <script type="text/javascript" src="${pageContext.request.contextPath}/resource/js/jquery-1.8.2.min.js"></script> <script src="${pageContext.request.contextPath}/resource/jquery-easyui-1.4.5/jquery.easyui.min.js"type="text/javascript"></script> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>上傳圖片</title> </head> <body> <!-- 文字框中onclick時間問題,只要把<script>放在前面就行 --> <script type="text/javascript"> function uploadPic(){ if($("#file").val()==""){ $.messager.alert("提示","請選擇資料夾"); return false; } $("#p").ajaxSubmit({ type:"post", //提交方式 url:"${pageContext.request.contextPath}/student/filesUpload", //請求url success:function(data){ //提交成功的回撥函式 $.messager.alert("提示",data); } }); } </script> <form id="p" method="POST" enctype="multipart/form-data"accept="image/gif, image/jpeg,image/jpg, image/png"> <div style="width: 100%;height: 100%"> <div style="text-align: center;margin-top: 20px"> 上傳的檔案: <input id="file" type="file" name="myfiles"/><br/> <input type="button" value="確定" onclick="uploadPic()" style="margin-top: 10px"> </div> </div> </form> </body> </html>
/*** * 儲存檔案 * * @param file * @return */ private boolean saveFile(HttpServletRequest request, MultipartFile file) { // 判斷檔案是否為空 if (!file.isEmpty()) { try { // 儲存的檔案路徑(如果用的是Tomcat伺服器,檔案會上傳到\\%TOMCAT_HOME%\\webapps\\YourWebProject\\upload\\資料夾中 ) String filePath = request.getSession().getServletContext() .getRealPath("/") + "upload/" + file.getOriginalFilename(); System.err.println(filePath); File saveDir = new File(filePath); if (!saveDir.getParentFile().exists()) saveDir.getParentFile().mkdirs(); System.err.println(filePath); // 轉存檔案 file.transferTo(saveDir); return true; } catch (Exception e) { e.printStackTrace(); } } return false; } /** * 上傳圖片 * * @param files * @param request * @return */ @ResponseBody @RequestMapping("/filesUpload") public String filesUpload(@RequestParam("myfiles") MultipartFile[] files, HttpServletRequest request) { String result =OperatorEnum.OperatorFailure.getName(); if (files != null && files.length > 0) { for (int i = 0; i < files.length; i++) { MultipartFile file = files[i]; // 儲存檔案 boolean a = saveFile(request, file); if(a){ result = OperatorEnum.OperatorSuccess.getName(); } } } // 重定向 return result; }
效果圖: