首页 > 编程 > Java > 正文

java访问controller示例

2019-11-11 03:21:18
字体:
来源:转载
供稿:网友
package com.ocl.www.utils;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import org.apache.http.NameValuePair;import org.apache.http.client.ClientPRotocolException;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.message.BasicNameValuePair;import org.apache.http.util.EntityUtils;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.*;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.Set;/*** Created by Administrator on 2016/12/16.*/public class OutServerUntils {//private static String targetURL = "http://192.168.1.39:8012/ocl-search-server/solrArticleController/queryDocsTest";//private static final String targetURL = "http://192.168.1.39:8012/ocl-search-server/article/selectAllArticle";/*** 处理get请求.@param url 请求路径@return json*/public String get(String url,String sendstr){//实例化httpclientCloseableHttpClient httpclient = HttpClients.createDefault();//实例化get方法HttpGet httpget = new HttpGet(url);try {httpget.setURI(new URI(httpget.getURI().toString() + "?" + sendstr));} catch (URISyntaxException e) {e.printStackTrace();}//请求结果CloseableHttpResponse response = null;String content ="";try {//执行get方法response = httpclient.execute(httpget);if(response.getStatusLine().getStatusCode()==200){content = EntityUtils.toString(response.getEntity(),"utf-8");System.out.println(content);}} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return content;}/*** 处理post请求.@param url 请求路径@param params 参数@return json*/public String post(String url,Map<String, String> params){//实例化httpClientCloseableHttpClient httpclient = HttpClients.createDefault();//实例化post方法HttpPost httpPost = new HttpPost(url);//处理参数List<NameValuePair> nvps = new ArrayList<NameValuePair>();Set<String> keySet = params.keySet();for(String key : keySet) {nvps.add(new BasicNameValuePair(key, params.get(key)));}//结果CloseableHttpResponse response = null;String content="";try {//提交的参数UrlEncodedFormEntity uefEntity = new UrlEncodedFormEntity(nvps, "UTF-8");//将参数给post方法httpPost.setEntity(uefEntity);//执行post方法response = httpclient.execute(httpPost);if(response.getStatusLine().getStatusCode()==200){content = EntityUtils.toString(response.getEntity(),"utf-8");System.out.println(content);}} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return content;}public static String callInterface(String targetURL,String input,String requestMethod,String contentType){String output = null;try {URL targetUrl = new URL(targetURL);HttpURLConnection httpConnection = (HttpURLConnection) targetUrl.openConnection();httpConnection.setDoOutput(true);httpConnection.setRequestMethod(requestMethod);httpConnection.setRequestProperty("Content-Type", contentType);//String input = "{/"id/":1,/"firstName/":/"Liam/",/"age/":22,/"lastName/":/"Marco/"}";//String input = "{/"solrdata/":234}";///String input = "{}";OutputStream outputStream = httpConnection.getOutputStream();outputStream.write(input.getBytes("utf-8"));outputStream.flush();if (httpConnection.getResponseCode() != 200) {throw new RuntimeException("Failed : HTTP error code : "+ httpConnection.getResponseCode());}BufferedReader responseBuffer = new BufferedReader(new InputStreamReader((httpConnection.getInputStream())));output = responseBuffer.readLine();// System.out.println("Output from Server:/n");//while ((output = responseBuffer.readLine()) != null) {// System.out.println(output);//}httpConnection.disconnect();} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}return output;}public static void main(String[] args) {// String targetURL = "http://192.168.1.39:8012/ocl-search-server/article/selectAllArticle";// String input = "{}";// String targetURL = "http://192.168.1.39:8012/ocl-search-server/solrArticleController/queryDocsTest";// String input = "{/"solrdata/":234}";//// String data = OutServerUntils.callInterface(targetURL,input,"","application/x-www-form-urlencoded");// System.out.println(JSONObject.fromObject(data).get("listarti"));// System.out.println(JSONArray.fromObject(JSONObject.fromObject(data).get("listarti")).size());// post请求方式// OutServerUntils hd = new OutServerUntils();// Map<String,String> map = new HashMap();// map.put("appid","CALLBELL1");// map.put("mtype","query");// map.put("timestamp","timestamp");// map.put("sign","73fadcd81c2970c0b602d026308266b7");// map.put("params","{mobilePhone:15017573651}");// hd.post("http://192.168.1.39/cas-server-webapp/api",map);// get请求方式(参数写法有问题)OutServerUntils hd = new OutServerUntils();String sendstr = "appid=CALLBELL1&mtype=query&timestamp=timestamp&sign=73fadcd81c2970c0b602d026308266b7&params={mobilePhone:15017573651}";String content = hd.get("http://192.168.1.39/cas-server-webapp/api",sendstr);System.out.println(content); }} 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表