- 浏览: 190153 次
- 性别:
- 来自: 上海
文章分类
最新评论
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.Map;
/**
* @author Administrator
*
*/
public class HttpUtil {
/**
* 使用Get方式获取数据
*
* @param url
* URL包括参数,http://HOST/XX?XX=XX&XXX=XXX
* @param charset
* @return
*/
public static String sendGet(String url, String charset) {
String result = "";
BufferedReader in = null;
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection connection = realUrl.openConnection();
// 设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 建立实际的连接
connection.connect();
// 定义 BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
connection.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送GET请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输入流
finally {
try {
if (in != null) {
in.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
return result;
}
/**
* POST请求,字符串形式数据
* @param url 请求地址
* @param param 请求数据
* @param charset 编码方式
*/
public static String sendPostUrl(String url, String param, String charset) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// 发送请求参数
out.print(param);
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
conn.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
* POST请求,Map形式数据
* @param url 请求地址
* @param param 请求数据
* @param charset 编码方式
*/
public static String sendPost(String url, Map<String, String> param,
String charset) {
StringBuffer buffer = new StringBuffer();
if (param != null && !param.isEmpty()) {
for (Map.Entry<String, String> entry : param.entrySet()) {
buffer.append(entry.getKey()).append("=")
.append(URLEncoder.encode(entry.getValue()))
.append("&");
}
}
buffer.deleteCharAt(buffer.length() - 1);
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// 发送请求参数
out.print(buffer);
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
conn.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
public static void main(String[] args) {
}
}
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.Map;
/**
* @author Administrator
*
*/
public class HttpUtil {
/**
* 使用Get方式获取数据
*
* @param url
* URL包括参数,http://HOST/XX?XX=XX&XXX=XXX
* @param charset
* @return
*/
public static String sendGet(String url, String charset) {
String result = "";
BufferedReader in = null;
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection connection = realUrl.openConnection();
// 设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 建立实际的连接
connection.connect();
// 定义 BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
connection.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送GET请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输入流
finally {
try {
if (in != null) {
in.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
return result;
}
/**
* POST请求,字符串形式数据
* @param url 请求地址
* @param param 请求数据
* @param charset 编码方式
*/
public static String sendPostUrl(String url, String param, String charset) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// 发送请求参数
out.print(param);
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
conn.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
/**
* POST请求,Map形式数据
* @param url 请求地址
* @param param 请求数据
* @param charset 编码方式
*/
public static String sendPost(String url, Map<String, String> param,
String charset) {
StringBuffer buffer = new StringBuffer();
if (param != null && !param.isEmpty()) {
for (Map.Entry<String, String> entry : param.entrySet()) {
buffer.append(entry.getKey()).append("=")
.append(URLEncoder.encode(entry.getValue()))
.append("&");
}
}
buffer.deleteCharAt(buffer.length() - 1);
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// 发送请求参数
out.print(buffer);
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
conn.getInputStream(), charset));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (IOException ex) {
ex.printStackTrace();
}
}
return result;
}
public static void main(String[] args) {
}
}
发表评论
文章已被作者锁定,不允许评论。
-
TIME_WAIT、CLOSE_WAIT、
2017-08-23 14:36 517netstat -n | awk '/^tcp/ {++S[$ ... -
ActiveMQ的集群多种部署方式
2016-08-15 16:56 680ActiveMQ的多种部署方式 ... -
http协议三次握手
2016-03-11 10:57 336TCP(Transmission Control Protoc ... -
dubbo 与zookeeper
2016-01-15 09:53 831详见 http://dubbo.io/ http:/ ... -
get post 误区
2015-04-10 10:52 478众所周知的http请求有两种: get与post: 这两种 ... -
通信协议概览
2015-01-26 11:07 398在分布式服务框架中, ... -
Hessian 分布式?
2015-01-26 12:03 1236Hessian 是由 caucho 提供的 ... -
http client 方式调用webservice
2015-01-21 10:47 811对于初学者而言,拼装soap请求报文似乎不是很简单的事情,但这 ... -
Xfire 笔记
2015-01-20 16:29 563mark,待补充 -
访问webservice的几种方式
2015-01-20 16:25 716Web service一般就是用SOAP协议通过HTTP来调用 ... -
jax-ws(jws)
2015-01-16 11:08 633Java SE 6封装了JAX-WS(Java API for ... -
axis2
2015-01-15 10:31 342一 sts axis2 方式 生成webservice b ... -
webservice
2015-01-14 12:58 636WebService是一种跨编程语 ...
相关推荐
2. **HTTP客户端API**:JDK 11提供了内置的HTTP客户端API(java.net.http.HttpClient),这是一个非阻塞的API,能够更高效地处理网络请求。 3. **文本块(Text Blocks)**:这是一个新的语法特性,用于方便地编写...
Apache Commons BeanUtils是Apache软件基金会的一个项目,它提供了一组实用工具类,简化了JavaBean对象之间的属性操作。通过提供自动类型转换和属性复制等功能,BeanUtils使得开发者能更方便地处理JavaBean对象,...
JDK是Java编程环境的核心组件,包含了Java编译器、Java运行时环境、Java标准库和其他开发工具。JDK 11对Java语言、类库和JVM(Java虚拟机)进行了一系列改进和增强,以提升性能、稳定性和安全性。 1. **模块化系统...
1. **HTTP客户端**:Java 11引入了新的`java.net.http`包,提供了一个内置的HTTP/2客户端,支持异步和同步的HTTP请求,使网络通信更加便捷。 2. **动态类型语言支持**:`jdk.incubator.jpackage`模块提供了对创建和...
2. **HTTP客户端 API (JSR 358)**:Java 11内建了一个新的HTTP客户端API,位于`java.net.http`包下,提供了一种更高效、更易用的方式来执行HTTP/2请求。 3. **本地变量类型推断 (var keyword)**:Java 11引入了`var...
Java 11内置了一个全新的HTTP客户端API,位于`java.net.http`包下,提供了一种更现代、更高效的方式来处理HTTP请求和响应。它支持异步和同步操作,可以处理HTTP/1.1和HTTP/2协议,同时提供了流式传输功能,极大地...
- Java开发工具包(JDK)1.6或1.7版本 - Eclipse开发环境,推荐使用Eclipse 4.3版本配合Android开发工具包(ADT) - Android SDK API 级别至少为17 - Appium for Windows 7安装程序 - 可以使用Java或Python脚本 ...
JDK是Java编程语言的核心组件,它包含了Java运行环境(JRE)、编译器(javac)、调试工具(jdb)和其他必要的工具,使得开发者能够编写、编译、运行和测试Java程序。JDK-16.0.2是Oracle公司发布的特定版本,针对...
这个压缩包包含了在Linux操作系统上运行Java开发工具集(Java Development Kit)所需的所有核心组件。JDK是Java程序员开发、编译、调试和运行Java应用程序所必需的基础软件。 描述中的“java16源文件,linux64位,...
4. 在客户端,使用Spring提供的`WebSocketStompClient`和相关工具类建立连接,订阅和发送消息。 Spring的WebSocket实现更加灵活,可以结合Spring的强大功能,如依赖注入、AOP、事务管理等,以及对消息系统的全面...
JDK是开发和运行Java应用程序所必需的软件包,它包含了Java编译器、Java运行时环境(JRE)、调试工具和其他必要的开发工具。为了编译和测试Java源代码,开发者必须在他们的电脑上设置好JDK环境。 在标签中,...
3. **HTTP客户端API**:Java 11内置了HTTP客户端API(java.net.http.HttpClient),这是一个非阻塞的、高性能的API,用于执行HTTP/2和HTTP/1.1请求。 4. **垃圾收集器优化**:JDK 11提供了不同的垃圾收集器选项,如...
在实际学习过程中,如果只有.class文件而没有源码(.java文件),我们可以通过反编译工具(如JAD或JD-GUI)来查看类的源代码,了解其功能和实现。这有助于我们理解Applet的工作机制。 5. **开发与部署**: 开发...
- **JDK**:Java开发工具包,包含了编译器、解释器和其他工具。 - **JVM**:Java虚拟机,负责执行Java字节码。 - **Eclipse**:流行的Java集成开发环境。 - **Linux**:广泛用于服务器端的开源操作系统。 #### 八、...
HttpURLConnection类则方便地处理HTTP请求和响应。 10. **数据库连接**:Java通过JDBC(Java Database Connectivity)与各种数据库交互。JDBC驱动提供了连接数据库、执行SQL语句和处理结果集的方法。 11. **框架...
Java浏览器是一种基于Java技术实现的网络浏览工具,它利用了JDK中的Java Desktop Integration Components (JDIC)库来实现与操作系统桌面环境的交互。JDIC是Sun Microsystems(现Oracle)开发的一个开源项目,旨在...
总的来说,Appium Java jar包为开发者提供了一套完整的工具,帮助他们在Java环境中高效地进行移动应用的自动化测试。通过深入理解和熟练运用这个框架,可以显著提升测试效率,减少手动测试的工作量,保证产品质量。
JDK,即Java开发工具包,是Java的核心组成部分。它包含了Java运行环境、一系列的开发工具以及Java的基础类库。目前,市场上主流的JDK是由Sun Microsystems发布的,除此之外,还有其他公司和组织也开发了自己的JDK...
- 下载地址:[Oracle JDK](http://www.oracle.com/technetwork/java/javase/downloads/index.html) - 安装完成后配置环境变量: - `JAVA_HOME`:指定JDK安装路径 - `PATH`:添加`%JAVA_HOME%\bin`到系统路径 - ...