java后台获取流_java后台发送请求获取数据,并解析json数据
packagecom.bs.utils;importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.io.PrintWriter;importjava.net.URL;importjava.net.URLConnection;importjava.util.List;importjava.util.Map;public classBackEndHttpRequest {/*** 向指定的URL發送GET方法的請求
*@paramurl 發送請求的URL
*@paramparam 請求參數,請求參數應該是 name1=value1&name2=value2 的形式
*@return遠程資源的響應結果*/
public staticString sendGet(String url, String param) {
String result= "";
BufferedReader bufferedReader= null;try{//1、讀取初始URL
String urlNameString = url + "?" +param;//2、將url轉變為URL類對象
URL realUrl = newURL(urlNameString);//3、打開和URL之間的連接
URLConnection connection =realUrl.openConnection();//4、設置通用的請求屬性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");//connection.setRequestProperty("Content-Type", "application/json; charset=utf-8");//5、建立實際的連接
connection.connect();//獲取所有響應頭字段
Map> map =connection.getHeaderFields();//遍歷所有的響應頭字段
for(String key : map.keySet()) {
System.out.println(key+ "---->" +map.get(key));
}//6、定義BufferedReader輸入流來讀取URL的響應內容 ,UTF-8是后續自己加的設置編碼格式,也可以去掉這個參數
bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));
String line= "";while(null != (line =bufferedReader.readLine())) {
result+=line;
}//int tmp;//while((tmp = bufferedReader.read()) != -1){//result += (char)tmp;//}
}catch(Exception e) {//TODO: handle exception
System.out.println("發送GET請求出現異常!!!" +e);
e.printStackTrace();
}finally { //使用finally塊來關閉輸入流
try{if(null !=bufferedReader) {
bufferedReader.close();
}
}catch(Exception e2) {//TODO: handle exception
e2.printStackTrace();
}
}returnresult;
}/*** 向指定的URL發送POST方法的請求
*@paramurl 發送請求的URL
*@paramparam 請求參數,請求參數應該是 name1=value1&name2=value2 的形式
*@return遠程資源的響應結果*/
public staticString sendPost(String url, String param) {
String result= "";
BufferedReader bufferedReader= null;
PrintWriter out= null;try{//1、2、讀取并將url轉變為URL類對象
URL realUrl = newURL(url);//3、打開和URL之間的連接
URLConnection connection =realUrl.openConnection();//4、設置通用的請求屬性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");//發送POST請求必須設置如下兩行
connection.setDoInput(true);
connection.setDoOutput(true);//5、建立實際的連接//connection.connect();//獲取URLConnection對象對應的輸出流
out = newPrintWriter(connection.getOutputStream());//發送請求參數
out.print(param);//flush輸出流的緩沖
out.flush();//
//6、定義BufferedReader輸入流來讀取URL的響應內容
bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));
String line;while(null != (line =bufferedReader.readLine())) {
result+=line;
}
}catch(Exception e) {//TODO: handle exception
System.out.println("發送POST請求出現異常!!!" +e);
e.printStackTrace();
}finally { //使用finally塊來關閉輸出流、輸入流
try{if(null !=out) {
out.close();
}if(null !=bufferedReader) {
bufferedReader.close();
}
}catch(Exception e2) {//TODO: handle exception
e2.printStackTrace();
}
}returnresult;
}
}
總結
以上是生活随笔為你收集整理的java后台获取流_java后台发送请求获取数据,并解析json数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware Workstation 与
- 下一篇: eclipse无法运行 ,报错:the