// 1。POST调用外部服务器接口、获取返回JSON数据
プライベート文字列getClientData(地図<文字列、文字列>のparams、String型のURLは)AppException {スロー
URLを接続します。
StringBufferのデータ=新しいStringBufferを();
試す{
//创建连接
=新しいURL(URL)を接続します。
HttpURLConnectionの接続=(HttpURLConnectionの)connect.openConnection();
connection.setRequestMethod( "POST");
connection.setDoOutput(真の);
connection.setDoInput(真の);
connection.setUseCaches(偽); //ポスト不能使用缓存
connection.setInstanceFollowRedirects(真の);
connection.setRequestProperty( "* / *"、 "受け入れます");
connection.setRequestProperty(「接続」、「キープアライブ」)。
connection.setRequestProperty( "ユーザーエージェント"、 "Mozillaの/ 4.0(互換; MSIE 6.0; Windows NTの5.1; SV1)");
OutputStreamWriter paramout =新規のOutputStreamWriter(
connection.getOutputStream()、 "UTF-8");
//拼接ポスト请求的参数
文字列paramsStr = "";
用(文字列PARAM:params.keySet()){
paramsStr + = "&" + PARAM + "=" + params.get(PARAM)。
}
{IF(paramsStr.isEmpty()!)
paramsStr = paramsStr.substring(1)。
}
paramout.write(paramsStr)。
paramout.flush();
BufferedReaderのリーダー=新しいBufferedReaderの(新しいInputStreamReaderの(connection.getInputStream()、 "UTF-8"));
一方、((ライン= reader.readLine())!= NULL){
インターフェースデータを返す//
data.append(行);
}
paramout.close();
reader.Close();
}キャッチ(例外E){
E .printStackTrace();
戻りNULL;
}
data.toStringを(返す);
}
// 2は外部サーバにGETインタフェースを呼び出し、データを取得するJSONを返さ。
@SuppressWarnings({ "リソース"})
プライベート文字列のgetData(MAP <文字列、文字列> paramsが、文字列のURL){
文字列の結果= "";
//スプライシングURL
文字列paramsStrは= "";
リスト<String>はをArrayListに<文字列>(params.keySetは())新しい新しいリストを=;
のため(int型I = 0;私は< list.size();私は++){
IF(I == 0){
paramsStr = "?" + list.get(0)+ "=" + params.get(list.get(0))。
}他{
paramsStr + = "&" + list.get(I)+ "=" + params.get(list.get(I))。
}
}
試みる{
HttpClientをクライアント=新しいDefaultHttpClient()。
HTTPGET GET =新しいHTTPGET(URL + paramsStr)。
get.setHeader( "文字セット"、 "UTF-8");
org.apache.http.HttpResponse応答= client.execute(取得)。
もし(200 == response.getStatusLine()getStatusCode()){
結果= EntityUtils.toString(response.getEntity()、 "UTF-8");
}
}キャッチ(ClientProtocolException電子){
e.printStackTrace();
ヌルを返します。
}キャッチ(IOExceptionを電子){
e.printStackTrace();
ヌルを返します。
}
戻り値の結果;
}
// 3。附录:引包
インポートjava.io.BufferedReader。
インポートにjava.io.IOException;
輸入java.io.InputStreamReader。
輸入java.io.OutputStreamWriterが、
インポートのjava.net.HttpURLConnection;
インポートのjava.net.URL;
輸入はjava.util.ArrayList;
輸入java.util.HashMapを;
輸入はjava.util.List;
輸入java.util.Map;
輸入java.util.regex.Matcher;
輸入java.util.regex.Patternの。
輸入javax.annotation.Resource。
輸入org.apache.commons.lang.StringUtils。
輸入org.apache.http.client.ClientProtocolException。
輸入org.apache.http.client.HttpClient。
輸入org.apache.http.client.methods.HttpGet;
輸入org.apache.http.impl.client.DefaultHttpClient。
輸入org.apache.http.util.EntityUtils。
輸入org.apache.logging.log4j.LogManager。
輸入org.apache.logging.log4j.Logger。
輸入org.springframework.stereotype.Service。
輸入org.springframework.transaction.annotation.Transactional;
輸入com.alibaba.fastjson.JSON。
輸入com.alibaba.fastjson.JSONObject。
輸入com.freework.Constant。
輸入com.freework.base.exception.AppException。
輸入com.freework.freedbm.bean.Criteria。
輸入com.freework.freedbm.util.PageGridParam。
輸入com.freework.freedbm.util.PageTotalResult。