通过URL和URLConnection实现下载
借鉴于《疯狂java讲义》
URL是指向互联网资源的指针。通常情况下,URL由协议名、主机、端口和资源组成,比如:Http://www.baidu.com/xxx.html
重要的方法:
* InputStream openStream() 打开和此URL的连接,返回用于读取该URL资源的InputStream,可以通过这个方法实现远程资源的下载,甚至可以实现多线程下载
* URLConnection和HttpURLConnection对象,前者表示应用程序和URL之间的连接,后者表示URL之间的HTTP连接。
* 创建一个URL连接,并发送请求、读取资源需要一下步骤:
- 通过URL的openConnection方法来获取URL的URLConnection对象
- 设置URLConnection的参数和普通请求对象
- 如果只是发送GET方式请求,则使用connect方法建立和远程资源之间的实际连接即可;如果需要发送POST请求,则需要获取URLConnection实例对应的输出流来发送请求参数
- 远程资源变为可用,程序之间可以访问远程资源的头字段或通过输入流读取远程资源的数据
* 一般来说,用setRequestProperty方法来设置或增加通用头字段,为该URLConnection的Key请求头字段增加value值,该方法不会覆盖原请求头字段的值,而是将新值追加到原请求头字段中。