最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java獲取網(wǎng)絡(luò)圖片上傳到OSS的方法

 更新時間:2018年10月23日 09:13:20   作者:李秀才  
這篇文章主要為大家詳細(xì)介紹了java獲取網(wǎng)絡(luò)圖片上傳到OSS,具有一定的參考價值,感興趣的小伙伴們可以參考一下

OSS不支持通過一個網(wǎng)絡(luò)地址來上傳圖片,所以若想將網(wǎng)絡(luò)上的圖片上傳到OSS上需要走點(diǎn)彎路。

1、通過鏈接將圖片下載到本地的一個文件夾下面

2、用OSS上傳該文件夾下的文件

3、上傳完成后刪除本地的文件

具體代碼如下:

 //獲取當(dāng)前項(xiàng)目的絕對路徑 
 public static String getTomcatPath(){ 
  String nowpath;   
  String tempdir; 
  nowpath=System.getProperty("user.dir"); 
  tempdir=nowpath.replace("bin", ""); //把bin 文件夾變到 webapps文件里面 
  return tempdir; 
 } 
 /**
 * 將圖片下載下來后,上傳到OSS
 * @param imgLink
 * @param downloadPath
 * @return
 * @throws Exception
 */
 private String downloadImagAndUploadToOss(String imgLink,String downloadPath) throws Exception{
  List<String> urlList=new ArrayList<String>();
  urlList.add(imgLink);
  String imgName=DateUtil.formatDate(new Date(), "yyyyMMddhhmmss")+UuidUtil.createUUID()+".jpg";
  downloadPicture(urlList,downloadPath,imgName);
 String key="carAlbum/"+imgName;
 String imgUrl=OSSObjectAPI.genOssPicUrl(OSSObjectAPI.XI_AN_BUCKET_NAME,OSSObjectAPI.XIAN_ACCESS_ID,OSSObjectAPI.XIAN_ACCESS_KEY,
  "http://oss-cn-zhangjiakou.aliyuncs.com/",downloadPath+imgName,key);
 FileUtil.delete(downloadPath+imgName);
 return imgUrl;
 } 
 /** 
  * 傳入要下載的圖片的url列表,將url所對應(yīng)的圖片下載到本地 
  * @param urlList 
  * @throws Exception 
  */ 
 private void downloadPicture(List<String> urlList,String path,String imgName) throws Exception { 
  if(urlList==null||urlList.size()==0){
   return;
  }
  URL url = null; 
  FileOutputStream fileOutputStream =null;
  InputStream inputStream =null;
  for (String urlString : urlList) { 
   try { 
     url = new URL(urlString);
     HttpURLConnection connection = (HttpURLConnection) url.openConnection();
     connection.addRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0");
     connection.setConnectTimeout(10 * 1000);
     connection.setReadTimeout(15 * 1000);
     inputStream = connection.getInputStream();
     byte[] buffer = new byte[1024];
     int length;
     fileOutputStream= new FileOutputStream(path+ File.separator+ imgName);
     while ((length = inputStream.read(buffer)) != -1) {
      fileOutputStream.write(buffer, 0, length);
     }
   } catch (Exception e) { 
    e.printStackTrace(); 
   } finally{
    inputStream.close();
    fileOutputStream.flush();
    fileOutputStream.close(); 
   }
  } 
 
 } 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Maven打包跳過測試的實(shí)現(xiàn)方法

    Maven打包跳過測試的實(shí)現(xiàn)方法

    使用Maven打包的時候,可能會因?yàn)閱卧獪y試打包失敗,這時候就需要跳過單元測試。本文就介紹了Maven打包跳過測試的實(shí)現(xiàn)方法,感興趣的可以了解一下
    2021-06-06
  • springboot打包部署到linux服務(wù)器的方法

    springboot打包部署到linux服務(wù)器的方法

    這篇文章主要介紹了springboot打包部署到linux服務(wù)器的方法,通過實(shí)例代碼相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • java 創(chuàng)建自定義數(shù)組

    java 創(chuàng)建自定義數(shù)組

    本篇文章是關(guān)于java 如何自己創(chuàng)建自定義數(shù)組,這里給大家一個小實(shí)例,希望能幫助有所需要的同學(xué)
    2016-07-07
  • SpringBoot初始教程之統(tǒng)一異常處理詳解

    SpringBoot初始教程之統(tǒng)一異常處理詳解

    本篇文章主要介紹了SpringBoot初始教程之統(tǒng)一異常處理詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • 詳解Java使用雙異步后如何保證數(shù)據(jù)一致性

    詳解Java使用雙異步后如何保證數(shù)據(jù)一致性

    這篇文章主要為大家詳細(xì)介紹了Java使用雙異步后如何保證數(shù)據(jù)一致性,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,有需要的小伙伴可以了解下
    2024-01-01
  • java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)

    java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)

    這篇文章主要介紹了java如何使用fastjson修改多層嵌套的Objectjson數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Java中數(shù)字黑洞實(shí)現(xiàn)代碼

    Java中數(shù)字黑洞實(shí)現(xiàn)代碼

    這篇文章主要介紹了Java編程中如何實(shí)現(xiàn)數(shù)字黑洞算法游戲,其中涉及到了數(shù)組、scanner、if語句等Java編程的基礎(chǔ)知識,需要的朋友可以參考下
    2017-09-09
  • Java使用阻塞隊(duì)列BlockingQueue實(shí)現(xiàn)生產(chǎn)者消費(fèi)者的方法

    Java使用阻塞隊(duì)列BlockingQueue實(shí)現(xiàn)生產(chǎn)者消費(fèi)者的方法

    BlockingQueue是一個支持阻塞插入和移除操作的隊(duì)列,常用于多線程環(huán)境下的生產(chǎn)者和消費(fèi)者場景,文章介紹了阻塞隊(duì)列BlockingQueue的概念和其在生產(chǎn)者消費(fèi)者模式中的應(yīng)用,提供了一個簡單的示例,展示了如何使用ArrayBlockingQueue來實(shí)現(xiàn)生產(chǎn)者消費(fèi)者模式
    2024-11-11
  • shardingJdbc3.x?版本的分頁bug問題解析

    shardingJdbc3.x?版本的分頁bug問題解析

    這篇文章主要為大家介紹了shardingJdbc3.x?版本的分頁問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • Spring事件監(jiān)聽源碼解析流程分析

    Spring事件監(jiān)聽源碼解析流程分析

    spring事件監(jiān)聽機(jī)制離不開容器IOC特性提供的支持,比如容器會自動創(chuàng)建事件發(fā)布器,自動識別用戶注冊的監(jiān)聽器并進(jìn)行管理,在特定的事件發(fā)布后會找到對應(yīng)的事件監(jiān)聽器并對其監(jiān)聽方法進(jìn)行回調(diào),這篇文章主要介紹了Spring事件監(jiān)聽源碼解析,需要的朋友可以參考下
    2023-08-08

最新評論

长治县| 德惠市| 寻甸| 社旗县| 友谊县| 晋宁县| 连平县| 广元市| 乐安县| 绥化市| 武清区| 元氏县| 离岛区| 措勤县| 神农架林区| 出国| 滦平县| 富平县| 万宁市| 延津县| 奇台县| 上林县| 海原县| 卓尼县| 阜阳市| 广元市| 正安县| 丰城市| 新河县| 奉节县| 屏东市| 湟中县| 永春县| 赤城县| 普宁市| 荆门市| 周至县| 新晃| 临泉县| 比如县| 九台市|