一、
二、
我试了试,Post方式也行啊,干嘛要叫强调Get方式,费解~~
答曰:get是向服务器请求数据,post是提交数据。
三、
package com.hpu.test;import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;public class HttpUtils {// 自定义的web服务器的资源private static String URL_PATH = "http://localhost:8080/TestGet/1.jpg";public HttpUtils() {// TODO Auto-generated constructor stub}public static void saveImageToDisk() throws IOException {InputStream inputStream = getInputStream();byte[] data = new byte[1024];int len = 0;FileOutputStream fileOutputStream = null;try {fileOutputStream = new FileOutputStream("D:\\p.jpg");while ((len = inputStream.read(data)) != -1) {fileOutputStream.write(data, 0, len);}} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} finally {if (inputStream != null) {try {inputStream.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}if (fileOutputStream != null) {try {fileOutputStream.close();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}/*** 获得服务器端数据,以InputStream形式返回* * @return* @throws IOException*/public static InputStream getInputStream() throws IOException {InputStream inputStream = null;HttpURLConnection httpURLConnection = null;try {URL url = new URL(URL_PATH);if (url != null) {httpURLConnection = (HttpURLConnection) url.openConnection();// 设置连接网络的超时时间httpURLConnection.setConnectTimeout(3000);httpURLConnection.setDoInput(true);// 设置本次http请求使用get方式请求httpURLConnection.setRequestMethod("GET");int responseCode = httpURLConnection.getResponseCode();if (responseCode == 200) {// 从服务器获得一个输入流inputStream = httpURLConnection.getInputStream();}}} catch (MalformedURLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return inputStream;}public static void main(String[] args) throws IOException {// 从服务器获得图片保存到本地saveImageToDisk();System.out.println("传输步骤完毕");}
}
四、IO学习链接
http://www.cnblogs.com/hxsyl/p/3302852.html