HttpClient

public class RestClientUtil
{
	public static final int NUMBER_OF_TIMEOUT = 30000;
	public static final int NUMBER_OF_100 = 100;

	static Properties properties = new Properties();
	static
	{
		InputStream stream = null;
		try
		{
			// RestClientUtil.class.getClassLoader()
			stream = Thread.currentThread().getContextClassLoader().getResourceAsStream("spring-config.properties");
			properties.load(stream);
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
		finally
		{
			try
			{
				if (null != stream)
				{
					stream.close();
				}
			}
			catch (Exception e)
			{
				e.printStackTrace();
			}
		}
	}

	public static String getValue(String key)
	{
		String value = properties.getProperty(key);
		if (null == value)
		{
			return "";
		}
		return value;
	}

	public static String getPcServiceIP()
	{
		String pcServiceIP = properties.getProperty("pcServiceIP");
		if (null == pcServiceIP)
		{
			return "";
		}
		return pcServiceIP;
	}

	public static String httpPost(String url, String requestParamJson)
	{
		try
		{
			HttpClient httpClient = new HttpClient();
			HttpConnectionManagerParams managerParams = httpClient.getHttpConnectionManager().getParams();
			// 设置连接超时时间(单位毫秒)
			managerParams.setConnectionTimeout(NUMBER_OF_TIMEOUT);
			// 设置读数据超时时间(单位毫秒)
			managerParams.setSoTimeout(NUMBER_OF_TIMEOUT);

			RequestEntity reqEntity = new StringRequestEntity(requestParamJson, "application/json", "UTF-8");
			PostMethod post = new PostMethod(url);
			post.setRequestEntity(reqEntity);
			post.addRequestHeader("Content-Type", "application/json;charset=UTF-8");

			HttpMethodParams params = new HttpMethodParams();
			params.setContentCharset("UTF-8");
			post.setParams(params);

			httpClient.executeMethod(post);
			InputStream is = post.getResponseBodyAsStream();
			if (null == is)
			{
				return "";
			}
			BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
			String tempbf;
			StringBuffer buffer = new StringBuffer(NUMBER_OF_100);
			while ((tempbf = br.readLine()) != null)
			{
				buffer.append(tempbf);
			}

			String responseJson = buffer.toString();

			// System.out.println("responseJson: " + responseJson);
			return responseJson;
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
		return "";

	}

	public static String invokeServcie(String serviceIP, Map<String, String> paramsMap)
	{
		try
		{
			// Client client = Client.create();
			// URI u = new URI(serviceIP);
			//
			// WebResource resource = client.resource(u);
			//
			// MultivaluedMap<String, String> queryParams = new
			// MultivaluedMapImpl();
			//
			// Set<String> keySet = paramsMap.keySet();
			// for (Iterator<String> iterator = keySet.iterator();
			// iterator.hasNext();)
			// {
			// String key = iterator.next();
			// String value = paramsMap.get(key);
			// queryParams.add(key, value);
			// }
			//
			// String result =
			// resource.queryParams(queryParams).get(String.class);
			return "";
		}
		catch (Exception e)
		{
			e.printStackTrace();
			return "";
		}
	}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sampson丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值