一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java commons io包實現多線程同步圖片下載入門教程

Java commons io包實現多線程同步圖片下載入門教程

2021-09-07 13:27用來學習 Java教程

這篇文章主要介紹了Java commons io包實現多線程同步圖片下載入門,commons io: 是針對開發IO流功能的工具類庫,其中包含了許多可調用的函數,感興趣的朋友跟隨小編一起看看吧

目的: 實現多線程同時下載網絡圖片,入門級。
多線程入門
commons io: 是針對開發IO流功能的工具類庫,其中包含了許多可調用的函數。

1.commons io 可直接百度,進入官網直接下載即可

Java commons io包實現多線程同步圖片下載入門教程

Linux下載tar.gz,window下載.zip。
2.解壓commons io ,復制下面的java文件,后在項目中,新建package,我的名為lib,如下,將復制的java文件粘貼到package中,并鼠標右擊此文件,點擊add as a library即可。

Java commons io包實現多線程同步圖片下載入門教程
Java commons io包實現多線程同步圖片下載入門教程

3.代碼如下:多線程基礎,入門,下載圖片。

  1. package Thread;
  2.  
  3. import org.apache.commons.io.FileUtils;
  4.  
  5. import java.io.File;
  6. import java.io.IOException;
  7. import java.net.URL;
  8.  
  9. //聯系Thread,實現多線程同步下載圖片
  10. public class TestThread2 extends Thread{
  11. private String url;//網絡圖片地址
  12. private String name;//保存的文件名
  13.  
  14. public TestThread2(String url,String name){
  15. this.url = url;
  16. this.name = name;
  17. }
  18. //下載圖片線程的執行體。
  19. @Override
  20. public void run() {
  21. WebDownloader webDownloader = new WebDownloader();
  22. webDownloader.downloader(url,name);
  23. System.out.println("下載了文件名為:"+name);
  24. }
  25. //下面的URL是在我自己的博客中找的圖片的url。
  26. public static void main(String[] args) {
  27. TestThread2 t1 = new TestThread2("https://img-blog.csdnimg.cn/20210410190908144.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzUyMDUwNzY5,size_16,color_FFFFFF,t_70#pic_center","1.jpg");
  28. TestThread2 t2 = new TestThread2("https://profile.csdnimg.cn/7/F/2/3_qq_52050769","2.jpg");
  29. TestThread2 t3 = new TestThread2("https://img-home.csdnimg.cn/images/20201124032511.png","3.jpg");
  30. //先下載t1,t2,t3。但是是同時執行的,多線程!
  31. t1.start();
  32. t2.start();
  33. t3.start();
  34. }
  35. }
  36.  
  37. //下載器
  38. class WebDownloader{
  39. //下載方法
  40. public void downloader(String url,String name){
  41. try {
  42. FileUtils.copyURLToFile(new URL(url),new File(name));
  43. } catch (IOException e) {
  44. e.printStackTrace();
  45. System.out.println("IO異常,downloader方法出現問題");
  46. }
  47. }
  48. }

也可以使用Runnable接口:效果一樣的。

  1. package Thread;
  2.  
  3. import org.apache.commons.io.FileUtils;
  4.  
  5. import java.io.File;
  6. import java.io.IOException;
  7. import java.net.URL;
  8.  
  9. //聯系Thread,實現多線程同步下載圖片
  10. public class TestThread2 implements Runnable{
  11. private String url;//網絡圖片地址
  12. private String name;//保存的文件名
  13.  
  14. public TestThread2(String url,String name){
  15. this.url = url;
  16. this.name = name;
  17. }
  18. //下載圖片線程的執行體。
  19. @Override
  20. public void run() {
  21. WebDownloader webDownloader = new WebDownloader();
  22. webDownloader.downloader(url,name);
  23. System.out.println("下載了文件名為:"+name);
  24. }
  25.  
  26. public static void main(String[] args) {
  27. TestThread2 t1 = new TestThread2("https://img-blog.csdnimg.cn/20210410190908144.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzUyMDUwNzY5,size_16,color_FFFFFF,t_70#pic_center","1.jpg");
  28. TestThread2 t2 = new TestThread2("https://profile.csdnimg.cn/7/F/2/3_qq_52050769","2.jpg");
  29. TestThread2 t3 = new TestThread2("https://img-home.csdnimg.cn/images/20201124032511.png","3.jpg");
  30. //先下載t1,t2,t3。但是是同時執行的,多線程!
  31. new Thread(t1).start();
  32. new Thread(t2).start();
  33. new Thread(t3).start();
  34. }
  35. }
  36.  
  37. //下載器
  38. class WebDownloader{
  39. //下載方法
  40. public void downloader(String url,String name){
  41. try {
  42. FileUtils.copyURLToFile(new URL(url),new File(name));
  43. } catch (IOException e) {
  44. e.printStackTrace();
  45. System.out.println("IO異常,downloader方法出現問題");
  46. }
  47. }
  48. }

4.結果如下:

Java commons io包實現多線程同步圖片下載入門教程
Java commons io包實現多線程同步圖片下載入門教程

該例子來從kuangstudy中自學總結,用于自我學習記錄。

到此這篇關于Java commons io包實現多線程同步圖片下載入門的文章就介紹到這了,更多相關Java commons io包多線程圖片下載內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/qq_52050769/article/details/115701271

延伸 · 閱讀

精彩推薦
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

    這篇文章主要介紹了xml與Java對象的轉換詳解的相關資料,需要的朋友可以參考下...

    Java教程網2942020-09-17
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩中求8032021-07-12
  • Java教程Java BufferWriter寫文件寫不進去或缺失數據的解決

    Java BufferWriter寫文件寫不進去或缺失數據的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數據的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發現了對于集合操作轉換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7472021-02-04
主站蜘蛛池模板: 久久精品一卡二卡三卡四卡视频版 | 脱女学小内内摸出水网站免费 | 国产成人久久精品推最新 | 香蕉免费一区二区三区 | 青青青国产在线 | 欧美日韩精品一区二区三区视频播放 | 幻女free性摘花第一次 | 午夜一个人在线观看完整版 | 久久精品观看影院2828 | 经典三级四虎在线观看 | 黑人日白人| 午夜精品久久久久 | kisssis无减删全集在线观看 | 久久99精品久久久久久园产越南 | 男生和女生艹逼 | 消息称老熟妇乱视频一区二区 | 高清在线观看mv的网址免费 | 亚洲精品在线免费 | 美女天天色 | 日本黄大片影院一区二区 | xx顶级欧美熟妞xxhd | 大香焦在线 | 日韩久久网 | 亚洲va久久久久综合 | 日韩免费在线视频 | 99精品视频在线观看免费 | 近亲乱中文字幕 | 91亚洲成人 | 亚洲乱码一区二区三区国产精品 | 扒开女人下面 | 91亚洲精品丁香在线观看 | 91夜夜人人揉人人捏人人添 | 亚洲精品一二三四 | 啊哈~嗯哼~用力cao我小说 | 欧美特级午夜一区二区三区 | 亚洲国产成人久久综合一 | 男人午夜禁片在线观看 | 九九热在线视频 | 国产精品免费综合一区视频 | 国产午夜亚洲精品一区网站 | 亚欧精品在线观看 |