方法调用:

//测试

public static void main(String[] args) {

  Map map = new HashMap();

  map.put("type", "update" );

  map.put("loginName", "4" );

  map.put("userpasswd", "96e79218965eb72c92a549dd5a330112" );

  map.put("email", "4444@qq.com" );

  JSONObject jsonObject = (JSONObject) JSONObject.toJSON(map);

  String strJsonObject=jsonObject.toString();

  String url = "http://localhost:8080/xtmc/synchroUser/insertWebUser.do?userData="+strJsonObject;

  System.out.println("注册同步 "+url);

  String jsonString = HttpRequestUtil.sendPost(url);

  System.out.println("返回的结果是"+jsonString);

}

sendPost(url)方法见链接:

http://www.cnblogs.com/zhuawang/archive/2012/12/08/2809380.html

或者:

/**
* 向指定 URL 发送POST方法的请求
*
* @param pathUrl 发送请求的 URL
* @return 所代表远程资源的响应结果
*/
public static String sendPost(String pathUrl) {
try {
  URL url = new URL(pathUrl);
  HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();   // //设置连接属性
  httpConn.setDoOutput(true);// 使用 URL 连接进行输出
  httpConn.setDoInput(true);// 使用 URL 连接进行输入
  httpConn.setUseCaches(false);// 忽略缓存
  httpConn.setRequestMethod("POST");// 设置URL请求方法
  String requestString = "客服端要以以流方式发送到服务端的数据...";   // 设置请求属性
  // 获得数据字节数据,请求数据流的编码,必须和下面服务器端处理请求流的编码一致
  byte[] requestStringBytes = requestString.getBytes("utf-8");
  httpConn.setRequestProperty("Content-length", "" + requestStringBytes.length);
  httpConn.setRequestProperty("Content-Type", "application/octet-stream");
  httpConn.setRequestProperty("Connection", "Keep-Alive");// 维持长连接
  httpConn.setRequestProperty("Charset", "UTF-8");
  //
  String name = URLEncoder.encode("黄武艺", "utf-8");
  httpConn.setRequestProperty("NAME", name);   // 建立输出流,并写入数据
  OutputStream outputStream = httpConn.getOutputStream();
  outputStream.write(requestStringBytes);
  outputStream.close();
  // 获得响应状态
  int responseCode = httpConn.getResponseCode();   if (HttpURLConnection.HTTP_OK == responseCode) {// 连接成功
    // 当正确响应时处理数据
    StringBuffer sb = new StringBuffer();
    String readLine;
    BufferedReader responseReader;
    // 处理响应流,必须与服务器响应流输出的编码一致
    responseReader = new BufferedReader(new InputStreamReader(httpConn.getInputStream(), "utf-8"));     while ((readLine = responseReader.readLine()) != null) {
      sb.append(readLine).append("\n");
    }
    responseReader.close();
    System.out.println(sb.toString());
    return sb.toString();
  }
} catch (Exception e) {
  System.out.println(e.getStackTrace());
}
return null;
}

被请求方法(/synchroUser/insertWebUser.do ):

@RequestMapping("/synchroUser/insertWebUser.do")
public void insertWebUser(HttpServletResponse response,HttpServletRequest request,@RequestParam("userData") String userData) throws Exception {
  JSONObject dataMap = null;
  System.out.println("接收到的userData==="+userData);
  try {
    dataMap = JSONObject.parseObject(userData);
  } catch (Exception e) {
    System.out.println("参数解析错误!");
    e.printStackTrace();
  }   String loginName = getJsonValue(dataMap, "loginName");
  String userpasswd = getJsonValue(dataMap, "userpasswd");
  String email = getJsonValue(dataMap, "email");
  String type = getJsonValue(dataMap, "type"); } catch (Exception e) {
  // TODO: handle exception
  flag = "false";
  e.printStackTrace();
}
  response.getWriter().write("success");
} /**
* 获取json对象中的属性
* @param params json对象
* @param key 参数名
* @return
*/
private String getJsonValue(JSONObject params, String key) {
  if (params == null || "".equals(key) || key == null) {
    return null;
  }
  Object obj = params.get(key);
  return obj == null ? null : obj.toString();
}

HttpURLConnection请求的更多相关文章

  1. HttpURLConnection请求数据流的写入(write)和读取(read)

    URLConnection类给应用 程序 和web资源之间架设起了通信的桥梁,这些web资源通常是通过url来标记的,本文将讲述如何使用HttpURLConnection来访问web页面(发送数据流) ...

  2. Android使用HttpUrlConnection请求服务器发送数据详解

    HttpUrlConnection是java内置的api,在java.net包下,那么,它请求网络同样也有get请求和post请求两种方式.最常用的Http请求无非是get和post,get请求可以获 ...

  3. 解决Fiddler不能监听Java HttpURLConnection请求的方法

    在默认情况下,Fiddler不能监听Java HttpURLConnection请求.究其原因,Java的网络通信协议栈可能浏览器的通信协议栈略有区别,Fiddler监听Http请求的原理是 在应用程 ...

  4. 使用Fiddler监听java HttpURLConnection请求

    使用Fiddler监听java HttpURLConnection请求

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

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

  6. HttpURLConnection请求网络数据

    //使用线程 new Thread(){            public void run() {                try {                    //先创建出了一 ...

  7. HttpURLConnection请求接口

    import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.DataOutputStream; ...

  8. 使用HttpURLConnection请求multipart/form-data类型的form提交

    写一个小程序,模拟Http POST请求来从网站中获取数据.使用Jsoup(http://jsoup.org/)来解析HTML. Jsoup封装了HttpConnection的功能,可以向服务器提交请 ...

  9. HttpURLConnection请求网络数据的Post请求

    //--------全局变量----------- //注册Url    private String urlPath="http://101.200.142.201:8080/VideoP ...

随机推荐

  1. iOS学习03C语言循环结构

    1.while循环 while (循环条件) {        循环体: } // 1.定义循环变量 ; // 2.循环条件 ) { // 3.循环体 printf("%d\n", ...

  2. linux 安装vbox增强工具

    首先在虚拟机控制台点设备--------安装增强功能,这样会用虚拟光驱加载增强功能镜象. 然后打开终端,先转到root身份:=================su================= f ...

  3. PHP处理超时方法

    一.在php.ini里面设置 max_execution_time = 1800; 二.通过PHP的ini_set 函数设置 ini_set("max_execution_time" ...

  4. [转]Hive:简单查询不启用Mapreduce job而启用Fetch task

    转自:http://www.iteblog.com/archives/831 如果你想查询某个表的某一列,Hive默认是会启用MapReduce Job来完成这个任务,如下: hive> SEL ...

  5. BZOJ 1925[Sdoi2010]地精部落 题解

    题目大意: 1~n的排列中,要任意一个数要么比它左右的数都大或小,求所有的方案数. 思路: 主要思路:离散. 三个引理: ①在n->n-1的转化过程中,我们删除了一个点后,我们可以将n-1个点视 ...

  6. dynamic 是什么

    dynamic是c# 4.0新增的类型,可以修饰类,对象,属性,索引器,方法返回值等. class ExampleClass { // A dynamic field. static dynamic ...

  7. XAML parser exception

    To debug xaml exception: Visual Studio -> Debug -> Exception -> Common Language Runtime Exc ...

  8. Ajax 完整教程。。转载

    Ajax 完整教程 第 1 页 Ajax 简介 Ajax 由 HTML.JavaScript™ 技术.DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应 ...

  9. android- 菜单

    选项菜单:menu_main.xml <?xml version="1.0" encoding="utf-8"?><menu xmlns:an ...

  10. Java 路径

    http://swiftlet.net/archives/713 Java中不存在标准的相对路径,各种相对路径取资源的方式都是基于某种规则转化为绝对路径.所以在Java中文件路径问题无非归结为一点:找 ...