900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > java http get json_java实现Http post(参数json格式) get 请求

java http get json_java实现Http post(参数json格式) get 请求

时间:2021-12-16 21:02:22

相关推荐

java http get json_java实现Http post(参数json格式) get 请求

java代码实现http请求工具类封装

参数介绍:

get方式请求:url:请求地址的字符串

post方式请求:url:请求地址的字符串

jsonString:json字符串

注意:json字符串的生成的方法如下

需要封装的json格式如下:

{

"touser":"OPENID",

"template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",

"data":{

"first": {

"value":"恭喜你审核通过!",

"color":"#173177"

},

"keyword1":{

"value":"中心",

"color":"#173177"

},

"keyword2": {

"value":"移动开发",

"color":"#173177"

},

"remark":{

"value":"点击进入",

"color":"#173177"

}

}

}

java代码转json字符串:

Map params=new HashMap();

Map data=new HashMap();

Map first=new HashMap();

Map keyword1=new HashMap();

Map keyword2=new HashMap();

Map remark=new HashMap();

remark.put("value", "点击进入");

remark.put("color", "#173177");

keyword2.put("value", "移动开发");

keyword2.put("color", "#173177");

keyword1.put("value", "中心");

keyword1.put("color", "#173177");

first.put("value", "恭喜你审核通过");

first.put("color", "#173177");

data.put("first", first);

data.put("keyword1", keyword1);

data.put("keyword2", keyword2);

data.put("remark", remark);

params.put("touser", openid);

params.put("template_id", "");

params.put("data", data);

String paramString= JSON.toJSONString(params);

另外,也可以用转移字符直接“\” 将双引号直接转成字符串内容。

java实现http的get、post请求工具类:

package com.css.sword.swordkb.web;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.nio.charset.Charset;

import org.apache.http.client.config.RequestConfig;

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.entity.StringEntity;

import org.apache.http.impl.client.CloseableHttpClient;

import org.apache.http.impl.client.HttpClients;

import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;

public class HttpUtil {

private static CloseableHttpClient httpClient;

static {

PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();

cm.setMaxTotal(100);

cm.setDefaultMaxPerRoute(20);

cm.setDefaultMaxPerRoute(50);

httpClient = HttpClients.custom().setConnectionManager(cm).build();

}

public static String get(String url) {

CloseableHttpResponse response = null;

BufferedReader in = null;

String result = "";

try {

HttpGet httpGet = new HttpGet(url);

RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000).setSocketTimeout(30000).build();

httpGet.setConfig(requestConfig);

httpGet.setConfig(requestConfig);

httpGet.addHeader("Content-type", "application/json; charset=utf-8");

httpGet.setHeader("Accept", "application/json");

response = httpClient.execute(httpGet);

in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

StringBuffer sb = new StringBuffer("");

String line = "";

String NL = System.getProperty("line.separator");

while ((line = in.readLine()) != null) {

sb.append(line + NL);

}

in.close();

result = sb.toString();

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (null != response) {

response.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

return result;

}

public static String post(String url, String jsonString) {

CloseableHttpResponse response = null;

BufferedReader in = null;

String result = "";

try {

HttpPost httpPost = new HttpPost(url);

RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(30000).setConnectionRequestTimeout(30000).setSocketTimeout(30000).build();

httpPost.setConfig(requestConfig);

httpPost.setConfig(requestConfig);

httpPost.addHeader("Content-type", "application/json; charset=utf-8");

httpPost.setHeader("Accept", "application/json");

httpPost.setEntity(new StringEntity(jsonString, Charset.forName("UTF-8")));

response = httpClient.execute(httpPost);

in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));

StringBuffer sb = new StringBuffer("");

String line = "";

String NL = System.getProperty("line.separator");

while ((line = in.readLine()) != null) {

sb.append(line + NL);

}

in.close();

result = sb.toString();

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

if (null != response) {

response.close();

}

} catch (IOException e) {

e.printStackTrace();

}

}

return result;

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。