package com.upload.tool;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class UploadInfoUtil
{
private static Logger logger = LoggerFactory.getLogger(UploadInfoUtil.class);

public static String sendHttpUploadInfo(String url, String params)
{
return upload(url, params);
}

private static String upload(String url, String params)
{
PrintWriter out = null;
BufferedReader in = null;
HttpURLConnection conn = null;
try
{
URL realUrl = new URL(url);

conn = (HttpURLConnection)realUrl.openConnection();

conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
conn.setRequestProperty("Charset", "UTF-8");

conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setConnectTimeout(5000);
conn.setReadTimeout(10000);
conn.setRequestMethod("POST");

out = new PrintWriter(new OutputStreamWriter(conn.getOutputStream(), "utf-8"));

out.print(params);

out.flush();

int resultCode = conn.getResponseCode();
if (200 == resultCode)
{
StringBuilder result = new StringBuilder();
in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
String line="";
while ((line = in.readLine()) != null)
{
result.append(line);
}
String str1 = result.toString();
return str1;
}
logger.error("请求返回有误:" + resultCode + ",msg:" + conn.getResponseMessage());
}
catch (Exception e)
{
logger.error("发送 POST 请求出现异常 msg:{}", e.getMessage());
try
{
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
finally
{
try
{
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
return "";
}
}

Java往指定地址接口发送内容方法的更多相关文章

  1. Java中的List接口特有的方法

    import java.util.ArrayList; import java.util.List; /* List接口中特有方法: 添加 add(int index, E element) addA ...

  2. GDB查看内存命令(x命令) 用gdb查看指定地址的内存内容

    GDB查看内存命令(x命令) - super119 - 博客园 https://www.cnblogs.com/super119/archive/2011/11/18/2254382.html 可以使 ...

  3. Java获取ip地址的几种方法

    以下内容介绍下java获取ip地址的几种思路. 1.直接利用java.net.InetAddress类获取,不过这种方法只在windows环境下有效,在linux环境下只能获取localhost地址( ...

  4. Java集合中Map接口的使用方法

    Map接口 Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value: Map中的键值对以Entry类型的对象实例形式存在: 建(key值 ...

  5. Java 集合之Collection 接口和遍历方法

    这几篇是我按网上的教程来实习的. URL: http://www.cnblogs.com/jbelial/archive/2013/03/27/2981395.html 打代码的感觉挻好的.. 注意在 ...

  6. java获取指定地址图片高度宽度简单代码

    package com.test; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.In ...

  7. java 类中定义接口的调用方法

    public class Human { public interface MyAction { public void getPower(); } } public class Test{ publ ...

  8. Java基础—抽象类和接口

    1.抽象类 在Java语言中使用abstrac关键字来定义抽象类和抽象方法,抽象方法没有定义,方法名后面直接跟一个分号,而不是花括号. public abstract class Employee { ...

  9. List接口中特有方法

    import java.util.ArrayList; import java.util.List; /* List接口中特有方法: 添加 add(int index, E element) addA ...

随机推荐

  1. SYM File

    Structure  Programme header Section Symbol table Programme header An executable or shared object fil ...

  2. java+Selenium+TestNg搭建自动化测试架构(2)实现跨浏览器功能

    1.切换浏览器类:其中包含了切换浏览器的方法,以及关闭浏览器,设置等待时间,以及重写的断言方法 package com.rrx.framework; import java.io.IOExceptio ...

  3. java生成简单验证码图片

    概要 最近项目需要用java实现输出随机验证码图片到前台,正好有机会接触下java的绘图类,完成需求后也有时间做个总结,写篇随笔记录下也希望能帮助到有同样需求的人! 需求流程图 1.生成随机数 在ja ...

  4. 强大的oracle分析函数

    转载:https://www.cnblogs.com/benio/archive/2011/06/01/2066106.html 学习步骤:1. 拥有Oracle EBS demo 环境 或者 PRO ...

  5. 装python package 时,conda提示会升级python2到python3,那可能是你的windows不支持py2env下的此包。

    装python package 时,conda提示会升级python2到python3, 那可能是你的windows不支持py2env下的此包.比如:win 下,tensorflow就不支持py2的环 ...

  6. IDL实现矢量文件裁剪栅格数据

    利用ENVI_SUBSET_VIA_ROI_DOIT函数实现矢量文件裁剪栅格数据. 测试数据:栅格文件是Mercator投影,矢量文件是Geographic坐标系 infile='F:\Temp_Da ...

  7. 图片转化成base64编码

    var img = "imgurl";//imgurl 就是你的图片路径 function getBase64Image(img) { var canvas = document. ...

  8. node-服务器

    原生: const http=require('http'); http.createServer((request,response)=>{ response.writeHead(200,{& ...

  9. Django2.X报错-------ModuleNotFoundError: No module named 'django.core.urlresolvers'

    django2.0 把原来的 django.core.urlresolvers 包 更改为了 django.urls包.所以将导入的包修改为django.urls.

  10. Packet Tracer路由器简单配置

    路由器Router2:Router>enable 进入特权模式Router#configure terminal 进入全局配置模式Router(config)#hostname RA 将路由器名 ...