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

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

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
主站蜘蛛池模板: 日本视频在线观看播放 | 沟厕okn系列在线播放 | 色综合色狠狠天天综合色hd | 91交换论坛| 国产成人精品一区二区仙踪林 | 欧美高清在线 | ova催眠性指导5最新在线 | 91亚洲视频在线观看 | 日韩av.com| bl双性肉文 | 国产男人搡女人免费视频 | 加勒比一本大道香蕉在线视频 | 秋霞理论最新三级理论最 | 91久久精品国产一区二区 | 成人在线视频播放 | 色一情一区二区三区四区 | 色综合天天综合中文网 | 日本精品一区二区三区 | caoporm国产精品视频免费 | 久久综合给会久久狠狠狠 | www毛片| 精品亚洲一区二区三区在线播放 | www.色呦呦.com | 国产aaa毛片 | 草综合 | 欧美人与日本人xx在线视频 | 国产精品视频久久久久 | 日本一区三区 | 亚洲国产麻豆 | a及毛片 | 九九大香尹人视频免费 | 国产主播精品在线 | 国产毛片一级aaaaa片 | 歪歪视频在线播放无遮挡 | 亚洲欧美日韩中文字幕久久 | 亚洲va久久久久综合 | 嗯啊视频在线观看 | 欧美日韩亚洲国内综合网香蕉 | 日本一区视频 | 欧美a级v片在线观看一区 | 99久久国产视频 |