當(dāng)前位置:首頁(yè) >  站長(zhǎng) >  編程技術(shù) >  正文

基于SpringBoot利用ajax實(shí)現(xiàn)上傳圖片功能

 2020-11-25 14:51  來(lái)源: 腳本之家   我來(lái)投稿 撤稿糾錯(cuò)

  域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)

這篇文章主要介紹了Spring Boot利用 ajax實(shí)現(xiàn)上傳圖片功能,本文圖文實(shí)例相結(jié)合,給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

SpringBoot重寫addResourceHandlers映射文件路徑

@Override
 public void addResourceHandlers(ResourceHandlerRegistry registry) {
   registry.addResourceHandler("/imctemp-rainy/**").addResourceLocations("file:D:/E/");
 }

設(shè)置靜態(tài)資源路徑

2. 表單 前端 頁(yè)面

<input type="file" name="file" id="file">
<p id="url"><img src="" width=200></p>
<input type="button" id="button" value="上傳" >
$(function () {
    $("#button").click(function () {
      var form = new FormData();
      form.append("file", document.getElementById("file").files[0]);
       $.ajax({
         url: "/stu/upload",    //后臺(tái)url
         data: form,
         cache: false,
         async: false,
         type: "POST",          //類型,POST或者GET
         dataType: 'json',       //數(shù)據(jù)返回類型,可以是xml、json等
         processData: false,
         contentType: false,
         success: function (data) {   //成功,回調(diào)函數(shù)
           if (data) {
           var pic="/imctemp-rainy/"+data.fileName;
           $("#url img").attr("src",pic);
           // alert(JSON.stringify(data));
           } else {
           alert("失敗");
           }
         },
         error: function (er) {     //失敗,回調(diào)函數(shù)
         alert(JSON.stringify(data));
         }
       });
    })
  })

控制器

public static void uploadFile(byte[] file, String filePath, String fileName) throws Exception {   
 File targetFile = new File(filePath);
 if (!targetFile.exists()) {
   targetFile.mkdirs(); 
 }   
 FileOutputStream out = new FileOutputStream(filePath +"/"+ fileName);
 out.write(file);  
 out.flush(); 
 out.close();
 }
 //處理文件上傳
  @ResponseBody //返回json數(shù)據(jù)
  @RequestMapping(value = "upload", method = RequestMethod.POST)
  public JSONObject uploadImg(@RequestParam("file") MultipartFile file,HttpServletRequest request) {   
    String contentType = file.getContentType();
    System.out.print(contentType);
  String fileName = System.currentTimeMillis()+file.getOriginalFilename(); 
  String filePath = "D:/E";
   JSONObject jo = new JSONObject();//實(shí)例化json數(shù)據(jù)
 
  if (file.isEmpty()) { 
   jo.put("success", 0);
   jo.put("fileName", "");
  }   
  try {
    uploadFile(file.getBytes(), filePath, fileName);
    jo.put("success", 1);
    jo.put("fileName", fileName);
   // jo.put("xfileName", filePath+"/"+fileName);
  } catch (Exception e) {
  // TODO: handle exception   
 
  } 
 
  //返回json
    return jo; 
  } 

總結(jié)

以上所述是小編給大家介紹的基于Spring Boot利用 ajax實(shí)現(xiàn)上傳圖片功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!

來(lái)源:腳本之家

鏈接:https://www.jb51.net/article/174084.htm

申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

相關(guān)標(biāo)簽
ajax

相關(guān)文章

  • Ajax實(shí)現(xiàn)頁(yè)面無(wú)刷新留言效果

    這篇文章主要為大家詳細(xì)介紹了Ajax實(shí)現(xiàn)頁(yè)面無(wú)刷新留言效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

    標(biāo)簽:
    ajax
  • AJAX檢測(cè)用戶名是否存在的方法

    這篇文章主要為大家詳細(xì)介紹了AJAX檢測(cè)用戶名是否存在,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

    標(biāo)簽:
    ajax
  • 使用AJAX 包含正則表達(dá)式 驗(yàn)證用戶登錄的步驟

    這篇文章主要介紹了使用AJAX(包含正則表達(dá)式)驗(yàn)證用戶登錄的步驟,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

    標(biāo)簽:
    ajax
  • ajax使用formdata上傳文件流

    這篇文章主要為大家詳細(xì)介紹了ajax使用formdata上傳文件流,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

    標(biāo)簽:
    ajax
  • Spring MVC+ajax進(jìn)行信息驗(yàn)證的方法

    AJAX不是新的編程語(yǔ)言,而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法。這篇文章主要介紹了SpringMVC+ajax進(jìn)行信息驗(yàn)證,需要的朋友可以參考下

    標(biāo)簽:
    ajax

熱門排行

信息推薦