时间:2021-05-20
Java多线程下载网图案例
此案例依赖——文件操作工具类(FileUtils)
使用 apache 的commons-io包下的FileUtilsimportorg.apache.commons.io.FileUtils;
下载commons-io包
官方API文档
点击即可下载,然后导入IDEA的库中或者项目中。
导包
步骤:
1.新建一个download类
2.在类中建立一个下载方法
下载方法需要接收2个变量,一个是url下载地址,一个是name文件名称
3.在下载方法中调用文件操作工具类(FileUtils)
4.try/catch捕获异常并提示异常
方法 说明 copyURLToFile(URL source, File destination) 将字节从URL复制source到文件中 destination。 //下载器class download{ //下载方法 public void down(String url,String name){ try { FileUtils.copyURLToFile(new URL(url),new File(name)); } catch (IOException e) { e.printStackTrace(); System.out.println("IO异常,download方法出现问题"); } }}步骤:
1.创建线程类-多线程下载器,继承Thread类
2.定义2个私有变量(url下载地址,name文件名称)
3.创建有参数构造器(用于初始化2个私有变量的值)
4.重写Thread父类的run方法
run方法的方法体内写入要执行的任务,我们的任务就是要下载网图,因为要用到下载器里面的下载方法,所以直接实例化download类,然后调用download类中的down方法,由于down方法需要接受2个String类型的变量(url和name),直接将2个私有变量传入进去,最后给个提示,打印出下载的文件名称。
public class 多线程下载器 extends Thread{ private String url; private String name; public 多线程下载器(String url, String name) { this.url = url; this.name = name; } @Override public void run() { download download = new download(); download.down(url,name); System.out.println("下载了名为"+name); }}步骤:
1.创建一个main方法
2.创建3个线程
创建线程的时候要传入参数,目的是调用有参构造器初始化私有变量
这里传入3个图片的地址以及文件的名称
注意文件名称,下载的文件类型要对应好相应的后缀名
多线程下载器 t1=new 多线程下载器("https:///favicon.ico","京东.ico"); t1.start(); t2.start(); t3.start(); }}//下载器class download{ public void down(String url,String name){ try { FileUtils.copyURLToFile(new URL(url),new File(name)); } catch (IOException e) { e.printStackTrace(); System.out.println("IO异常,download方法出现问题"); } }}
运行结果:
下载的文件默认位置在项目下如图:
双击图片文件可进行查看
到此这篇关于Java多线程下载网图的文章就介绍到这了,更多相关Java多线程下载网图内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了java多线程下载。分享给大家供大家参考,具体如下:使用多线程下载文件可以更快完成文件的下载,多线程下载文件之所以快,是因为其抢占的服务器资源多。
在上篇文章给大家介绍了java多线程的实现方式,通过本文给大家介绍java多线程实例,对java多线程感兴趣的朋友一起学习吧首先给大家说下多线程的优缺点多线程的
Java多线程线程同步与死锁1.线程同步多线程引发的安全问题一个非常经典的案例,银行取钱的问题。假如你有一张银行卡,里面有5000块钱,然后你去银行取款2000
一、java多线程基本入门java多线程编程还是比较重要的,在实际业务开发中经常要遇到这个问题。java多线程,传统创建线程的方式有两种。1、继承自Thread
这篇是Java多线程基本用法的一个总结。本篇文章会从一下几个方面来说明Java多线程的基本用法:如何使用多线程如何得到多线程的一些信息如何停止线程如何暂停线程线