標籤:com json mit get .com ann class 上傳圖片 random
function uploadPic(){var options = {url : "/upload/updatePic.action",type : "post",dataType : "json",success : function(data){$("#allUrl").attr("src", data.url);$("#imgUrl").val(data.url);}};$("#jvForm").ajaxSubmit(options);}
package top.dgoyou.core.controller;import java.io.File;import java.util.UUID;import javax.servlet.http.HttpServletResponse;import org.apache.commons.io.FilenameUtils;import org.json.JSONObject;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.multipart.MultipartFile;@Controller@RequestMapping("/upload")public class UploadController { //非同步上傳圖片 @RequestMapping("/updatePic") public void updatePic(MultipartFile pic,HttpServletResponse response) throws Exception{ //擷取檔案原始名 String filename = pic.getOriginalFilename(); //使用隨機字串+ 源圖片副檔名組成新的圖片名稱, 防止圖片重名 String newFileName=UUID.randomUUID().toString().replaceAll("-","")+"."+FilenameUtils.getExtension(filename); //將檔案儲存到圖片伺服器("E:\testpic"存放圖片虛擬路徑 後期可換成FastDFS||雲端) pic.transferTo(new File("E:\testpic")); //JSONObject是簡單的轉json工具類 , 但是只可以轉string, double,integer,long等簡單類型, 不可以轉pojo, list, set, map等 JSONObject jsonObject = new JSONObject(); jsonObject.put("url","/pic/"+ newFileName); response.setContentType("application/json;charset=utf-8");
//響應到前台頁面 response.getWriter().write(jsonObject.toString()); }}
ajax非同步上傳圖片&SpringMVC後台代碼