package com.ligotop.core.utils;

import com.ligotop.core.exceptions.BusinessException;

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL; public class HttpMethodUtil { public static String doPost(String url,String params){
HttpURLConnection conn = null;
BufferedReader reader = null;
PrintWriter writer = null;
String content = null;
StringBuffer sbf = new StringBuffer();
try{
URL u = new URL(url);
conn = (HttpURLConnection)u.openConnection();
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setReadTimeout(50000);
conn.setConnectTimeout(60000);
conn.setRequestProperty("accept","*/*");
conn.setRequestProperty("connection","Keep-Alive");
conn.setRequestProperty("content-Type","application/json"); writer = new PrintWriter(new OutputStreamWriter(conn.getOutputStream(),"UTF-8"));
writer.print(params);
writer.flush(); reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
while((content = reader.readLine())!=null){
sbf.append(content);
}
}catch(Exception e){
e.printStackTrace();
}finally{
if(writer!=null){
writer.close();
}
if(reader!=null){
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
conn.disconnect();
}
return sbf.toString(); } public static String doGet(String url){
StringBuffer sbf = new StringBuffer();
HttpURLConnection conn = null;
BufferedReader br = null;
String content = null;
try{
URL u = new URL(url);
conn = (HttpURLConnection)u.openConnection();
conn.setReadTimeout(50000);
conn.setConnectTimeout(60000);
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
if(conn.getResponseCode()==200){
br = new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
while((content=br.readLine())!=null){
sbf.append(content);
}
}
}catch(Exception e){
e.printStackTrace();
throw new BusinessException("请求数据失败");
}finally{
if(br!=null){
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
conn.disconnect();
}
return sbf.toString();
} }

HttpUrlConnection工具类的更多相关文章

  1. java http工具类和HttpUrlConnection上传文件分析

    利用java中的HttpUrlConnection上传文件,我们其实只要知道Http协议上传文件的标准格式.那么就可以用任何一门语言来模拟浏览器上传文件.下面有几篇文章从http协议入手介绍了java ...

  2. 分享自己配置的HttpURLConnection请求数据工具类

    >>该工具类传入string类型url返回string类型获取结果import java.io.BufferedReader;import java.io.InputStream;impo ...

  3. HttpUrlConnection使用Get和Post访问服务器的工具类(一)

    首先我们有一个返回响应的接口HttpCallBackListener public interface HttpCallbackListener { void onFinish(String resp ...

  4. java工具类

    1.HttpUtilsHttp网络工具类,主要包括httpGet.httpPost以及http参数相关方法,以httpGet为例:static HttpResponse httpGet(HttpReq ...

  5. Http、Https请求工具类

    最近在做微信开发,使用http调用第三方服务API,有些是需要https协议,通过资料和自己编码,写了个支持http和https的工具类,经验证可用,现贴出来保留,也供需要的人使用(有不足的地方,也请 ...

  6. Android开发常用工具类

    来源于http://www.open-open.com/lib/view/open1416535785398.html 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前 ...

  7. HttpTool.java(在java tool util工具类中已存在) 暂保留

    HttpTool.java 该类为java源生态的http 请求工具,不依赖第三方jar包 ,即插即用. package kingtool; import java.io.BufferedReader ...

  8. 53. Android常用工具类

    主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java.目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils.Prefer ...

  9. android下载简单工具类

    功能是实现下载文件,图片或MP3等,为了简单起见使用单线程,此代码为MarsAndroid教程的复制品,放在此处,留着参考. 首先是一个得到字节流随后保存到内存卡上的工具类: package com. ...

随机推荐

  1. 03-CSS颜色、文本、字体、边框、背景

    # Css颜色,文本字体 ## css颜色表示法1.颜色名表示,比如:red 红色,gold 金色 2.16进制数值表示,比如:#ff0000 表示红色,这种可以简写成 #f00 3.RGB颜色: 红 ...

  2. 【JAVA】eclipse里代码整个前移或者后移的快捷键

    一整块后移是:选中按 tab 一整块前移是:选中按 shift+tab

  3. k3 cloud套打模板中绑定加税合价字段的时候数据都为空,不绑定的时候显示正常

    检查bos中加税合计字段,是不是关联币别绑定错误

  4. document.body.scrollTop值为0的解决方法[转]

    做页面的时候可能会用到位置固定的层,读取document.body.scrollTop来设置层的位置,像这样,       window.onscroll=function () {          ...

  5. 2018-8-10-C#-ValueTuple-原理

    title author date CreateTime categories C# ValueTuple 原理 lindexi 2018-08-10 19:16:52 +0800 2018-2-13 ...

  6. rabbit-c编译 vs2013

    需要openssl的库

  7. react依赖注入之mapStateToProps&&mapDispatchToProps

    今天看前辈写的代码,看到mapStateToProps&&mapDispatchToProps处,不明白,于是又是各种找资料,在CSDN博客中发现一篇好文,摘抄到此,方便自己阅读! 原 ...

  8. generator (1)

    function array () { console.log(arguments) }; array(1,2,3) 从这里我们可以看出 数组的迭代方法里面有一个 属性  [Symbol.iterat ...

  9. ubuntu idea 安装

    一.下载 1.进入官网 下载对应安装包 https://www.jetbrains.com/idea/download/#section=linux sudo wget https://downloa ...

  10. 黑客已经瞄准5G网络,如何防止LTE网络攻击?

    黑客是如何攻击5G网络?即使5G进行大规模应用,LTE技术会被淘汰吗?那么我们应该如何防止LTE网络攻击? 5G-网络黑客 即将推出的5G网络也可能容易受到这些攻击,来自中国网络安全研究人员表示,尽管 ...