圖片上傳
使用MultipartFile上傳圖片到tomcat的webapps目錄pic下面
public JsonResult saveImageFile(@RequestParam(value = "imageFile", required = false) MultipartFile imageFile, @RequestParam(value = "fileName", required = false) String fileName, HttpServletRequest request) { result = new JsonResult(); try { //image輸出地址 //String picPath = "/data/sdwan/apache-tomcat-8.5.32/webapps/pic/"; // String picPath = request.getSession().getServletContext().getRealPath("upload/");//本地項目路徑 //String photoFileName = imageFile.getOriginalFilename(); File file=new File(""); String picPath=file.getAbsolutePath().replace("bin","webapps\\pic\\"); File newFile = new File(picPath+fileName); // 文件存在 if (!newFile.exists()) { logger.info( picPath+" targetFile is not exist"); // 新建文件目錄 newFile.mkdirs(); } imageFile.transferTo(newFile); //保存文件 result.setRetCode("200"); result.setRetMessage("圖片上傳成功!"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); result.setRetCode("400"); result.setRetMessage("圖片上傳失敗!"); } catch (IOException e) { e.printStackTrace(); result.setRetCode("400"); result.setRetMessage("圖片上傳失敗!"); } return result; }
圖片的獲取:http://localhost:8080/sdwan/pic/1560160595232kbq0s85qqta.jpg
在tomcat設置url虛擬路徑映射:server.xml
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
<Context docBase="D:\Tomcat\webapps\pic" path="/sdwan/pic" reloadable="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>