java json请求_java发送JSON格式的http通讯的post请求 | 学步园

一、下面是java代码经过测试后成功了。

package com.test;

import java.io.BufferedReader;

import java.io.DataOutputStream;

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.UnsupportedEncodingException;

import java.net.HttpURLConnection;

import java.net.MalformedURLException;

import java.net.URL;

import java.text.SimpleDateFormat;

import java.util.Date;

import net.sf.json.JSONObject;

public class AppHttp {

public static final String ADD_URL = "http://10.20.121.233:8928/ccs/openInterface/compSystemRece.do";

public static void appadd() {

try{

//创建连接

URL url = new URL(ADD_URL);

HttpURLConnection connection = (HttpURLConnection) url.openConnection();

connection.setDoOutput(true);

connection.setDoInput(true);

connection.setRequestMethod("POST");

connection.setUseCaches(false);

connection.setInstanceFollowRedirects(true);

//connection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");

connection.setRequestProperty("Content-Type","application/json; charset=UTF-8");

connection.connect();

//POST请求

DataOutputStream out = new DataOutputStream(connection.getOutputStream());

JSONObject obj = new JSONObject();

obj.put("orderId", "4444444444444"); // 订单号

SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

System.out.println(sf.format(new Date()));

obj.put("compTime",sf.format(new Date())); // 投诉时间

obj.put("comperAddress", "我是一个兵"); // 投诉人地址

//System.out.println(obj.toString());

//out.writeBytes(obj.toString());//这个中文会乱码

out.write(obj.toString().getBytes("UTF-8"));//这样可以处理中文乱码问题

out.flush();

out.close();

//读取响应

BufferedReader reader = new BufferedReader(new InputStreamReader(

connection.getInputStream()));

String lines;

StringBuffer sb = new StringBuffer("");

while ((lines = reader.readLine()) != null) {

lines = new String(lines.getBytes(), "utf-8");

sb.append(lines);

}

System.out.println(sb);

reader.close();

// 断开连接

connection.disconnect();

} catch (MalformedURLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void main(String[] args) {

appadd();

}

}

二、所需要的jar包

commons-lang-2.4.jar commons-logging-1.1.1.jar ezmorph-1.0.6.jar json-lib-0.9.jar 四个jar包。

三、HTTP协议状态码的含义

"100 " : Continue

"101 " : witching Protocols

"200 " : OK

"201 " : Created

"202 " : Accepted

"203 " : Non-Authoritative Information

"204 " : No Content

"205 " : Reset Content

"206 " : Partial Content

"300 " : Multiple Choices

"301 " : Moved Permanently

"302 " : Found

"303 " : See Other

"304 " : Not Modified

"305 " : Use Proxy

"307 " : Temporary Redirect

"400 " : Bad Request

"401 " : Unauthorized

"402 " : Payment Required

"403 " : Forbidden

"404 " : Not Found

"405 " : Method Not Allowed

"406 " : Not Acceptable

"407 " : Proxy Authentication Required

"408 " : Request Time-out

"409 " : Conflict

"410 " : Gone

"411 " : Length Required

"412 " : Precondition Failed

"413 " : Request Entity Too Large

"414 " : Request-URI Too Large

"415 " : Unsupported Media Type

"416 " : Requested range not satisfiable

"417 " : Expectation Failed

"500 " : Internal Server Error

"501 " : Not Implemented

"502 " : Bad Gateway

"503 " : Service Unavailable

"504 " : Gateway Time-out

"505 " : HTTP Version not supported 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值