基于http协议下载远程服务器资源文件
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Objects;
public class DownloadDemo {
private static final String TARGET_PATH = "http://28.7.135.105/telverify/getFile?verifyId=xxxxxx";
private static final String SOURCE_PATH = "/var/workspace04/springboot-webflux";
public static void main(String[] args) {
downloadFile();
}
public static void downloadFile(){
BufferedInputStream inputStream = null;
FileOutputStream outputStream = null;
try {
URL url = new URL(TARGET_PATH);
URLConnection connection = url.openConnection();
File file = new File(SOURCE_PATH);
outputStream = new FileOutputStream(file);
inputStream = new BufferedInputStream(connection.getInputStream());
byte[] bytes = new byte[2048];
int size;
while ((size = inputStream.read(bytes)) != -1){
outputStream.write(bytes,0,size);
}
System.out.println("-----------download finish-----------------");
}catch (IOException e){
System.err.println("---------IOException---------");
e.printStackTrace();
}finally {
try {
if (Objects.nonNull(inputStream)){
inputStream.close();
}
if (Objects.nonNull(outputStream)){
outputStream.close();
}
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
}