- 浏览: 96836 次
- 性别:
- 来自: 湖南
文章分类
最新评论
-
化蝶自在飞:
还是走腾讯应用宝吧.
微信扫二维码下载客户端被挡 -
hyper1987stone:
java敏感词过滤 -
菜鸟级JAVA:
先引用2个js(一个jquery、一个日期插件),然后在需要使 ...
java jsp 日期控件 -
woshishen__74:
你的有点问题 是不是少了一个jar包?????
java jsp 日期控件
package util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.fastjson.JSON;
import com.hzlq.gdlh.dto.ReqResult;
public class HttpClient {
private static Logger logger = LoggerFactory.getLogger(HttpClient.class);
private static final int timeoutConnection = 60000;
private static final int timeoutSocket = 60000;
public static HttpResponse get(String url) throws Exception {
url=url.replace(" ", "%20");
logger.debug("=====http get url[{}]=====", url);
HttpParams myParams = new BasicHttpParams();
// 2s连接不上就超时
HttpConnectionParams.setConnectionTimeout(myParams, 20 * 1000);
// 300s数据读取未完成,超时
HttpConnectionParams.setSoTimeout(myParams, 300 * 1000);
DefaultHttpClient client = new DefaultHttpClient(myParams);
HttpResponse response = null;
try {
HttpGet get = new HttpGet(url);
response = client.execute(get);
if (response.getStatusLine().getStatusCode() == 200) {
logger.debug("====http get url[{}] success====", url);
} else {
logger.error("====返回状态错误:\n{}====", response.toString());
throw new Exception("http get请求失败");
}
} catch (UnsupportedEncodingException e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} catch (ClientProtocolException e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} catch (Exception e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} finally {
client.getConnectionManager().shutdown();
return response;
}
}
/*
ArrayList<BasicNameValuePair> pairs = new ArrayList<BasicNameValuePair>();
pairs.add(new BasicNameValuePair(参数1,值1));
pairs.add(new BasicNameValuePair(参数2,值2));
pairs.add(new BasicNameValuePair(参数3,值3));
pairs.add(new BasicNameValuePair(参数4,值4));
*/
public static ReqResult post(String url , ArrayList<BasicNameValuePair> pairs) throws Exception {
HttpPost httpPost = new HttpPost(url);
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters,
timeoutConnection);
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
DefaultHttpClient httpclient = new DefaultHttpClient(httpParameters);
HttpResponse httpResponse;
try {
httpPost.setEntity(new UrlEncodedFormEntity(pairs, "UTF-8")); //
httpResponse = httpclient.execute(httpPost);
int status = httpResponse.getStatusLine().getStatusCode();
if (status != HttpStatus.SC_OK) {
logger.error("调用企业的统一http接口出错,返回的status:" + status);
} else {
InputStream inStream = null;
BufferedReader reader = null;
try {
inStream = httpResponse.getEntity().getContent();
reader = new BufferedReader(new InputStreamReader(inStream,
"utf-8"));
StringBuilder strber = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
strber.append(line);
}
logger.info("调用企业的统一http接口 返回信息 result:" + strber);
ReqResult res = JSON.parseObject(strber.toString(),
ReqResult.class);
return res;
} catch (Exception e) {
logger.error("", e);
} finally {
if (inStream != null) {
inStream.close();
}
if (reader != null) {
reader.close();
}
}
}
} catch (UnsupportedEncodingException e1) {
logger.error("", e1);
} catch (ClientProtocolException e1) {
logger.error("", e1);
} catch (IOException e1) {
logger.error("", e1);
} finally {
if (httpclient != null) {
httpclient.getConnectionManager().shutdown();
}
}
return null;
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.fastjson.JSON;
import com.hzlq.gdlh.dto.ReqResult;
public class HttpClient {
private static Logger logger = LoggerFactory.getLogger(HttpClient.class);
private static final int timeoutConnection = 60000;
private static final int timeoutSocket = 60000;
public static HttpResponse get(String url) throws Exception {
url=url.replace(" ", "%20");
logger.debug("=====http get url[{}]=====", url);
HttpParams myParams = new BasicHttpParams();
// 2s连接不上就超时
HttpConnectionParams.setConnectionTimeout(myParams, 20 * 1000);
// 300s数据读取未完成,超时
HttpConnectionParams.setSoTimeout(myParams, 300 * 1000);
DefaultHttpClient client = new DefaultHttpClient(myParams);
HttpResponse response = null;
try {
HttpGet get = new HttpGet(url);
response = client.execute(get);
if (response.getStatusLine().getStatusCode() == 200) {
logger.debug("====http get url[{}] success====", url);
} else {
logger.error("====返回状态错误:\n{}====", response.toString());
throw new Exception("http get请求失败");
}
} catch (UnsupportedEncodingException e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} catch (ClientProtocolException e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} catch (Exception e) {
logger.error("请求外部服务[{}]失败", url);
logger.error("ERROR", e);
throw e;
} finally {
client.getConnectionManager().shutdown();
return response;
}
}
/*
ArrayList<BasicNameValuePair> pairs = new ArrayList<BasicNameValuePair>();
pairs.add(new BasicNameValuePair(参数1,值1));
pairs.add(new BasicNameValuePair(参数2,值2));
pairs.add(new BasicNameValuePair(参数3,值3));
pairs.add(new BasicNameValuePair(参数4,值4));
*/
public static ReqResult post(String url , ArrayList<BasicNameValuePair> pairs) throws Exception {
HttpPost httpPost = new HttpPost(url);
HttpParams httpParameters = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParameters,
timeoutConnection);
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
DefaultHttpClient httpclient = new DefaultHttpClient(httpParameters);
HttpResponse httpResponse;
try {
httpPost.setEntity(new UrlEncodedFormEntity(pairs, "UTF-8")); //
httpResponse = httpclient.execute(httpPost);
int status = httpResponse.getStatusLine().getStatusCode();
if (status != HttpStatus.SC_OK) {
logger.error("调用企业的统一http接口出错,返回的status:" + status);
} else {
InputStream inStream = null;
BufferedReader reader = null;
try {
inStream = httpResponse.getEntity().getContent();
reader = new BufferedReader(new InputStreamReader(inStream,
"utf-8"));
StringBuilder strber = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
strber.append(line);
}
logger.info("调用企业的统一http接口 返回信息 result:" + strber);
ReqResult res = JSON.parseObject(strber.toString(),
ReqResult.class);
return res;
} catch (Exception e) {
logger.error("", e);
} finally {
if (inStream != null) {
inStream.close();
}
if (reader != null) {
reader.close();
}
}
}
} catch (UnsupportedEncodingException e1) {
logger.error("", e1);
} catch (ClientProtocolException e1) {
logger.error("", e1);
} catch (IOException e1) {
logger.error("", e1);
} finally {
if (httpclient != null) {
httpclient.getConnectionManager().shutdown();
}
}
return null;
}
}
发表评论
-
用java代码发送邮件(优化版)
2017-02-28 10:10 710调用代码如下: if(!StringUtil.isNull ... -
java读取配置文件信息
2017-01-06 16:18 10841、先引包 import java.io.Buffered ... -
生产随机字符串
2016-12-26 10:05 780根据自己的需求生成随机位数的字符串,如:复杂度为中以上的8位随 ... -
java数字转汉语读法
2015-08-28 10:22 851看到好的东西就想收藏一份,说不定自己哪天就用的上了。 ... -
java正则验证数字、邮箱格式、字符串
2015-08-28 10:00 2316用java代码正则验证数字、邮箱格式、字符串的一些工具类方法 ... -
一个简易的线程池示例
2015-08-07 17:39 512package thread.pool; impor ... -
Thread里面使用@resource失败,对象为null
2015-07-02 15:10 4590spring 在Thread中注入@Resource失败,总为 ... -
用java代码发送邮件 附件
2015-06-29 18:30 4243PS:3种示例的代码都在附件压缩包里,每个包一种示例,独立运行 ... -
页面添加验证码
2015-04-24 18:38 684先上图 我的这种方式由3部分代码组成:页面(html+j ... -
查看class文件是被jdk什么版本编译的
2015-04-24 18:24 1101package image; import java ... -
maven+springMVC+mybatis+junit详细搭建过程
2015-02-28 16:16 881springMVC+mybatis框架搭建 首先我们先要弄清搭 ... -
Base64编码解码
2015-02-27 16:53 600package util; import java. ... -
手机号码相关匹配,判断是否手机号码,属于哪个运营商1移动2联通3电信
2015-02-26 09:05 1807package com.hzlq.yyffserver.uti ... -
完成对json数据的解析
2015-02-26 09:05 571package util; import java.util ... -
数字格式+计算工具类
2015-02-26 09:05 707package util; import java.math ... -
RC4加解密
2015-02-27 15:03 1256/** * * 项目名称: * 类名称:RC4Util ... -
DES加密解密
2015-02-26 09:06 550package util; import it.sauron ... -
字符串和xml互转工具类
2015-02-26 09:05 1158package util; import java.io.B ... -
java date工具类
2015-02-25 14:39 1338package util; import java.text ... -
读取配置文件工具类
2015-02-25 14:35 760package util; import java.util ...
相关推荐
java的get和post请求,获取json的工具类,https时会存在ssl校验的问题,工具会自动去除ssl校验。
本篇文章将详细介绍如何使用Java语言实现Http和Https请求的工具类,包括如何建立Https连接、如何实现Post请求、如何处理SSL验证等内容。 在Java中,使用HttpURLConnection类可以实现Http和Https请求,但是对于...
本文将详细介绍一个封装了HTTP GET和POST请求的工具类,以及如何使用此类进行网络请求。该工具类支持HTTPS,确保数据传输的安全性。 首先,我们来看`HttpUtils`类,这是核心的网络请求工具类。在`HttpUtils`中,...
总结,"HttpUtils Java get post 工具类"是用于简化Java中HTTP GET和POST请求的实用工具,它还支持小文件的发送。通过这个工具类,开发者可以快速地进行网络请求,而无需关注底层HTTP连接的复杂性。同时,通过测试类...
### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 #### 一、概述 在Java编程中,处理HTTP请求是一项常见的需求,特别是在与Web服务进行交互时。Apache HttpClient库提供了一种强大的方法来执行HTTP...
java模拟HTTP发送post和get请求工具类,使用httpClient类
本文将详细解析如何使用Java实现HTTP和HTTPS的GET与POST请求,并结合提供的类文件名称(HttpsHandler.java、HttpUtil.java、NetUtil.java)探讨可能的实现方式。 首先,`HttpUtil`类通常用于封装HTTP请求的操作。在...
对于POST请求,需要先写入请求体,然后读取响应。 ```java connection.connect(); int responseCode = connection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { BufferedReader in = ...
HttpClient是Java中用于执行HTTP请求的一个强大库,它提供了丰富的功能,可以方便地进行GET、POST请求,并且能够处理复杂的网络交互,包括发送文件等操作。下面我们将详细讨论HttpClientUtil工具类如何实现这些功能...
- `HttpsClientUtil.java`文件很可能是实现了上述功能的一个工具类,可能包含`post`方法,用于发送POST请求。 - 这个类可能会包含初始化`SSLContext`、创建`HttpsURLConnection`实例、设置请求参数、发送数据、...
http的post请求跟get请求工具类,传入参数就能进行调用,以及返回接口值
httpclient get/post请求工具类(map参数封装),方便调用
HttpClientUtil 是一个用于发送 HTTP 请求的工具类,主要支持 GET 和 POST 方法。它使用了 Apache HttpClient 库,这是一个强大的 Java 客户端编程工具包,用于处理 HTTP 协议。以下是对类中关键方法和概念的详细...
总之,Java中发起HTTP GET和POST请求有多种方式,HttpURLConnection是Java标准库的一部分,而HttpClient提供更强大的功能。实际开发中,根据项目需求选择合适的工具,并确保正确处理异常和资源关闭,以保证代码的...
4. **Java HTTPS工具类**: 工具类封装了HTTPS请求的实现细节,包括证书管理、SSL上下文配置等,使得开发者无需深入了解底层实现即可方便地发送HTTPS请求。 5. **SSL配置**: 在Java中,为了支持SSL,需要设置`SSL...
在给定的压缩包中,`8744277_RestfulRequestHelper.java` 文件很可能包含了一个名为`RestfulRequestHelper`的工具类,该类可能封装了上述HTTP请求的实现,方便开发者调用。`no.txt`文件可能是无关的,或者是一个占位...
本文将深入探讨如何利用Java的HttpClient库在后台模拟发送GET和POST请求,以及如何处理中文乱码问题。 首先,我们来理解GET和POST两种请求方法。GET请求通常用于获取服务器上的资源,它将参数附加到URL中,具有可...
总的来说,Java中实现HTTP GET和POST请求涉及到网络连接、数据传输和解析响应等关键步骤。通过使用标准Java库或第三方库,开发者可以方便地处理各种复杂的网络请求场景。在实际项目中,根据需求选择合适的方法和工具...
- `httpmime.jar`:用于处理多媒体内容和表单数据,特别适用于POST请求。 - `commons-logging.jar`:日志服务抽象层,用于HttpClient的日志输出。 这些库可以通过Maven或Gradle等构建工具轻松管理,或者手动下载...
本篇文章将详细讲解一个简单的Java工具类,用于发送HTTP请求,该工具类名为HttpURLUtils。 首先,让我们理解HTTP协议的基本概念。HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,它定义了客户端(如...