老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

java實(shí)現(xiàn)圖片的上傳與展示實(shí)例代碼

前言

永新網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計(jì)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)于2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

在很多的網(wǎng)站都可以實(shí)現(xiàn)上傳頭像,可以選擇自己喜歡的圖片做頭像,從本地上傳,下次登錄時(shí)可以直接顯示出已經(jīng)上傳的頭像,那么這個(gè)是如何實(shí)現(xiàn)的呢?下面話不多說了,來一起看看詳細(xì)的介紹吧

一、注意事項(xiàng):

1,該項(xiàng)目主要采用的是springboot+thymeleaf框架

2,代碼展示的為ajax完成圖片上傳(如果不用ajax只需要改變相應(yīng)的form表單配置即可)

二、效果實(shí)現(xiàn):

1,頁面效果:

java實(shí)現(xiàn)圖片的上傳與展示實(shí)例代碼 

2,文件夾路徑下就會(huì)多了對應(yīng)的圖片:

java實(shí)現(xiàn)圖片的上傳與展示實(shí)例代碼

三、代碼實(shí)現(xiàn):

1,在html文本中編輯為(采用thymeleaf框架):




     

2,編輯js代碼:

兩種情況:1,有file中有值的時(shí)候提交;2,file文件中沒有值的時(shí)候提交

function submitForm(pageIndex, pageSize) {
  var formData = new FormData(); //將需要提交的參數(shù)封裝起來
  formData.append("id", $("#id").val());
  var zswb = $("#file").val(); //獲取file中的內(nèi)容,看是否有值
  if (zswb == '' || zswb.length < 1) { //沒有file提交的時(shí)候走的接口
    $.ajax({
      url : '/editMovieWithoutFile',
      type : 'post',
      data : formData,
      processData : false,
      contentType : false,
      success : function(value) {
        var result = JSON.parse(value);
        if (result == 'true') {
          window.location.href = "/index?pageIndex=" + pageIndex+ "&pageSize=" + pageSize;
        } else {
          Lobibox.alert('error', {msg : "媒資信息更新失敗!!!"});
        }
      }
    });
  } else { //有file提交的時(shí)候走的接口
    formData.append("file", $("#file")[0].files[0]);
    $.ajax({
      url : '/editMovieInfo',
      type : 'post',
      data : formData,
      processData : false,
      contentType : false,
      success : function(value) {
      var result = JSON.parse(value);
    if (result == 'true') {
      window.location.href = "/index?pageIndex=" + pageIndex+ "&pageSize=" + pageSize;
    } else {
      Lobibox.alert('error', {msg : "媒資信息更新失敗!!!"});
    }
   }
  });
 }
}
//圖片回顯:
function preview(file) {
  $("#imgHidden").css("display", "none");
  var prevDiv = document.getElementById('preview');
  if (file.files && file.files[0]) {
    var reader = new FileReader();
    reader.onload = function(evt) {
      prevDiv.innerHTML = '';
    }
    reader.readAsDataURL(file.files[0]);
  } else {
    prevDiv.innerHTML = '
';   } }

3,application.properties中的配置上傳的限制

#配置文件傳輸
spring.servlet.multipart.enabled=true 
spring.servlet.multipart.file-size-threshold=0
#單個(gè)數(shù)據(jù)的大小
spring.servlet.multipart.maxFileSize=100MB
#總數(shù)據(jù)的大小
spring.servlet.multipart.maxRequestSize=100MB

4,controller(這里就不演示無file的情況,因?yàn)橹皇墙邮軈?shù)很簡單):

/**
* 有file文件時(shí)
* @param movieDto 封裝了需要傳遞過來的參數(shù)
* @param file 圖片file
*/
@RequestMapping("/editMovieInfo")
@ResponseBody
public String editMovieInfo(@RequestParam("id")final int id,@RequestParam("file")MultipartFile file) {
   int result = btShareService.editMovieInfo(id,file,uploadDir);
   if (result > -1) {
    return JSON.toJSONString("true");
   } else {
    return JSON.toJSONString("false");
  }
}

5,service層處理:

@Transactional
@Override
public int editMovieInfo(int id, MultipartFile file,String uploadDir) {
 try {
     // 圖片路徑
  String imgUrl = null;
     //上傳
  String filename = upload(file, uploadDir, file.getOriginalFilename());
  if (!EmptyUtil.isEmpty(filename)) {
   imgUrl = new File(uploadDir).getName() + "/" + filename;
  }
  MovieInfo movie = movieInfoService.selectMovieInfoByDcpId(Integer.valueOf(movieDto.getId()));
     movie .setImgUrl(imgUrl)
  movieInfoService.updateMovieInfoByDcpId(movieInfo);
      return 0;
 } catch (Exception e) {
    e.printStackTrace();
     return -1;
   }
}

圖片上傳的方法

public String upload(MultipartFile file, String path, String fileName) throws Exception {
  // 生成新的文件名
  String realPath = path + "/" + UUID.randomUUID().toString().replace("-", "")+fileName.substring(fileName.lastIndexOf("."));
  File dest = new File(realPath);
  // 判斷文件父目錄是否存在
  if (!dest.getParentFile().exists()) {
    dest.getParentFile().mkdir();
  }
  // 保存文件
  file.transferTo(dest);
  return dest.getName();
}

6,至于Dao層的操作和數(shù)據(jù)庫修改這里就直接省略了....

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對創(chuàng)新互聯(lián)的支持。


分享標(biāo)題:java實(shí)現(xiàn)圖片的上傳與展示實(shí)例代碼
文章路徑:http://www.xueling.net.cn/article/jhecge.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 视频福利一区 | 日韩亚洲国产中文永久 | 色成人在线 | 超碰在线天天 | 亚洲Av之男人的天堂 | 丁香七月激情婷婷 | 亚洲中文字幕久久精品无码喷水 | 国产在线观看成人 | 欧美在线3区| 中文字幕十区 | 999精品| 五月综合网亚洲乱妇久久 | 一区二区三区在线 | 国产精品偷伦视频免费还看的 | 综合激情丁香久久狠狠 | 欧美有码视频 | 8x成人66m免费视频 | 久久久久久国产精品高清 | 视频一区二区中文字幕 | 最好看的中文视频最好的中文 | 亚洲欧美国产国产综合一区 | 欧美a在线观看 | 新白娘子传奇50集免费赵雅芝版 | 国产亚洲精品久久久网站好莱 | 欧美一级淫片免费视频欧美辣图 | 日批视频在线免费看 | 免费看荫蒂添的好舒服视频 | 蜜桃精品成人影片 | 99国产精品久久久久99打野战 | 国产免费福利在线观看 | 国产成人亚洲欧美久久影院 | 欧美性受xxxx黑人xxxy爽 | 2020久久香蕉国产线看观看 | 精品传媒一区二区三区A片 欧美特黄色片 | 91在线精品观看 | 在线看片黄色 | 国产精品亚欧美一区二区 | 天天爱天天做天天做天天吃中文 | 男女在一起拔萝卜免费视频大全 | 国产1级视频 | 国产日日夜夜操 |