在项目中使用了http的get和post方式连接,发送传输数据;

public static String doGet(String httpUrl) {
HttpURLConnection conn = null;
InputStream is = null;
BufferedReader br = null;
String result = null;
try {
//创建远程url链接
URL url = new URL(httpUrl);
//通过远程URL连接对象打开一个连接
conn = (HttpURLConnection) url.openConnection();
//设置连接方式为get
conn.setRequestMethod("GET");
//设置连接主机服务器的超时时间
conn.setConnectTimeout(15000);
//设置读取远程返回的数据时间
conn.setReadTimeout(60000);
//发送请求
conn.connect();
//通过连接,获取输入流
if(conn.getResponseCode() == 200) {
is = conn.getInputStream();
//封装输入流is,并指定字符集
br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
//存放数据
StringBuffer sbf = new StringBuffer();
String temp = null;
while((temp = br.readLine()) != null) {
sbf.append(temp);
}
result = sbf.toString();
}
} catch (Exception e) {
e.printStackTrace();
}finally {
close(conn,is,null,br);
}
return result;
} public static String doPost(String httpUrl,String param) {
HttpURLConnection conn = null;
InputStream is = null;
OutputStream os = null;
BufferedReader br = null;
String result = null;
try {
//创建远程url链接
URL url = new URL(httpUrl);
//通过远程URL连接对象打开一个连接
conn = (HttpURLConnection) url.openConnection();
//设置连接方式为get
conn.setRequestMethod("POST");
//设置连接主机服务器的超时时间
conn.setConnectTimeout(15000);
//设置读取远程返回的数据时间
conn.setReadTimeout(60000); //默认设置为false,当向远程服务器传输/写数据
conn.setDoInput(true);
//默认设置为true,当前向远程服务器时,设置为true,该参数可有可无
conn.setDoOutput(true);
//设置传入参数的格式:请求参数应该是name1 = value1,name2 = value2的形式
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
//通过连接对象获取一个输出流
os = conn.getOutputStream();
//通过输出流对象将数据写出去
os.write(param.getBytes("UTF-8"));
//通过连接,获取输入流
if(conn.getResponseCode() == 200) {
is = conn.getInputStream();
//封装输入流is,并指定字符集
br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
//存放数据
StringBuffer sbf = new StringBuffer();
String temp = null;
while((temp = br.readLine()) != null) {
sbf.append(temp);
}
result = sbf.toString();
}
} catch (Exception e) {
e.printStackTrace();
}finally {
close(conn,is,null,br);
}
return result;
}

最新文章

  1. kettle定时任务_第三方合作方有订单自动发送邮件通知_20161214
  2. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
  3. 红外解码编码学习----verilog
  4. docker入门的文章
  5. php 生成 Json
  6. 图 - 从零开始实现by C++
  7. 小韦XP 和win2003装电信天翼3G无线上网卡
  8. Oracle 数据库中日期时间的插入操作
  9. POJ-2955括号匹配问题(区间DP)
  10. CF528D. Fuzzy Search [FFT]
  11. Matlab与C混编的介绍
  12. 【BZOJ3691】游行(网络流)
  13. 转 Multiple outputs from T4 made easy t4生成多文件
  14. Android几种解析XML方式的比较
  15. linux系统中关于shell变量$*与$@的区别
  16. 20155237 2016-2017-2 《Java程序设计》第2周学习总结
  17. 20135316王剑桥 linux第六周课实验笔记
  18. 洛谷 P2184 贪婪大陆 解题报告
  19. emacs之配置auto-complete
  20. SQL Server ->> 高可用与灾难恢复(HADR)技术之 -- Transaction Replication(事务复制)

热门文章

  1. 记录工作中linux相关操作
  2. [Leetcode] 第337题 打家劫舍III
  3. Python集训营45天—Day07 (面向对象编程进阶)
  4. alpha测试和beta测试的区别
  5. 全文搜索引擎 Elasticsearch
  6. springboot系列之04-提高开发效率必备工具lombok
  7. nginx 配置语法
  8. 基于C#的机器学习--机器学习建模的基础
  9. 利用双重检查锁定和CAS算法:解决并发下数据库的一致性问题
  10. JavaScript设计模式——原型模式