需求 :下载资源文件到本地
public void getDownloadResource(String url, String filePath) throws IOException {
File file = new File(filePath);
if (!file.exists()) {
file.createNewFile();
}
try {
OutputStream out = new FileOutputStream(file);
// Method1
downLoadByJdk(url, out);
// method2
// downLoadByHttpCommons(url, out);
// method3
downloadByCommonsHttpclient(url, out);
} catch (Exception e) {
}
}
Java自带的API实现
public static void downLoadByJdk(String url, OutputStream out) {
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
IOUtils.copy(conn.getInputStream(), out);
out.close();
}