HttpURLConnection类的作用是通过HTTP协议向服务器发送请求,并可以获取服务器发回的数据。 HttpURLConnection来自于jdk,它的完整名称为:java.net.HttpURLConnection HttpURLConnection类,没有公开的构造方法,但我们可以通过java.net.URL的openConnection方法获取一个URLConnection的实例,而HttpURLConnection是它的子类。

URL url = new URL(“http://localhost:8080”); HttpURLConnection connection = (HttpURLConnection) url.openConnection();

示例:

conn.getResponseCode():获取响应码 conn.getResponseMessage():获取响应码描述 conn.getHeaderField(“Server”):获取响应头 conn.getInputStream():获取正文输入流

Source code    
  1. //建立与服务器的URL对像
  2. URL url = new URL("http://localhost:9999/day05/servlet/Servlet1");
  3. //打开连接
  4. HttpURLConnection con = (HttpURLConnection)url.openConnection();
  5. //获取服务器的输入流
  6. InputStream in = con.getInputStream();
  7. BufferedReader br = new BufferedReader(new InputStreamReader(in));
  8. String str = "";
  9. while((str=br.readLine())!=null){
  10. System.err.println(str);
  11. }
  12. con.disconnect();

向服务器发消息默认请求到doGet方式

Source code    
  1. URL url = new URL("http://localhost:9999/day05/index.jsp");
  2. HttpURLConnection con = (HttpURLConnection)url.openConnection();
  3. //1、打开可以向服务器发消息
  4. con.setDoOutput(true);
  5. conn.setRequestProperty("xxx", "yyy");//发送请求头
  6. OutputStream out = con.getOutputStream();
  7. out.write(“name=wzhting”.getBytes());//发送正文数据
  8. //2、获取状态码,以表示完成请求
  9. int code = con.getResponseCode();
  10. System.err.println(code);

使用doPost方式

Source code    
  1. URL url = new URL("http://localhost:9999/day05/servlet/TestConnection");
  2. HttpURLConnection con = (HttpURLConnection)url.openConnection();
  3. //1、设置请求方式为post
  4. con.setRequestMethod("POST");
  5. //可以向服务器发消息
  6. con.setDoOutput(true);
  7. OutputStream out = con.getOutputStream();
  8. out.write("name=wzhting".getBytes));
  9. //获取状态码,以表示完成请求
  10. int code = con.getResponseCode();
  11. System.err.println(code);

HttpURLConnection详解的更多相关文章

  1. HttpUrlConnection使用详解--转AAAAA

    http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/HttpConnection.html HttpUr ...

  2. HTTP和HTTPS详解

    http://blog.csdn.net/mingli198611/article/details/8055261/ 转自:http://www.cnblogs.com/ok-lanyan/archi ...

  3. java.util.Scanner应用详解++扫描控制台输入

    java.util.Scanner应用详解   java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java ...

  4. HTMLParser 使用详解

    htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或   提取html.它能超高速解析html,而且不会出错.现在htmlparser最新版本为2 ...

  5. HttpClient使用详解

    http://itindex.net/detail/52566-httpclient HttpClient使用详解 标签: httpclient | 发表时间:2015-01-22 12:07 | 作 ...

  6. (转)java.util.Scanner应用详解

    java.util.Scanner应用详解   java.util.Scanner是Java5的新特征,主要功能是简化文本扫描.这个类最实用的地方表现在获取控制台输入,其他的功能都很鸡肋,尽管Java ...

  7. JavaI/O体系详解

    Java中IO操作主要是指使用Java进行输入,输出操作,Java中所有的IO操作类都存放在Java.io包中,在使用时需要导入此包. 在整个Java.io包中最重要的就是5个类和一个接口.5个类指的 ...

  8. android 的android httpClient详解

    AndroidHttpClient结构: public final class AndroidHttpClient extends Object implements HttpClient 前言: 这 ...

  9. 【转】Android OkHttp3简介和使用详解

    一 OKHttp简介 OKHttp是一个处理网络请求的开源项目,Android 当前最火热网络框架,由移动支付Square公司贡献,用于替代HttpUrlConnection和Apache HttpC ...

随机推荐

  1. java基础知识再学习--HashMap与ConcurrentHashMap的区别

    引用:http://blog.csdn.net/xuefeng0707/article/details/40834595 从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是 ...

  2. 【转】10 个迅速提升你 Git 水平的提示

    最近我们推出了两个教程:熟悉Git的基本功能和让你在开发团队中熟练的使用Git . 我们所讨论的命令足够一个开发者在Git使用方面游刃有余.在这篇文章中,我们试图探索怎样有效的管理你的时间和充分的使用 ...

  3. phantomjs初入门

    对DOM操作,而调试过程必不可少,对于那些微乎其微的方法,总显得余力不足.在这里PhantomJS就就行了很好的实现. PhantomJS是一个拥有JavaScript API的无界面WebKit 正 ...

  4. 一个支持实时预览的在线 Markdown 编辑器 - Markdoc

    最近组内需要为一些项目和系统写文档,发表在公司内的文档平台上,这个平台并不支持markdown,所以打算做一个在线markdown编辑器,支持实时预览,并且可以很容易的迁移发表到公司文档平台上,所以就 ...

  5. [C入门 - 游戏编程系列] 贪吃蛇篇(六) - 蛇实现

    这一篇是关于设置蛇的属性的,接上一篇(五). 设置蛇的速度,很简单,只要不是负数就行了. void SNK_SetSnakeSpeed(Snake *snake, int speed) { ) sna ...

  6. Scala学习笔记--抽象成员

    package com.evor.test1 class Test1 { } object Test1{ def main(args:Array[String]):Unit = { //类参数和抽象字 ...

  7. Quartz.net Cron表达式

    由7段构成:秒 分 时 日 月 星期 年(可选)"-" :表示范围  MON-WED表示星期一到星期三"," :表示列举 MON,WEB表示星期一和星期三&qu ...

  8. poj2409 Let it Bead

                                                                      Let it Bead Time Limit: 1000MS   M ...

  9. Powershell 执行外部命令

    Powershell 执行外部命令 724 11月, 2011  在 Powershell  tagged Powershell教程 / 程序 by Mooser Lee本文索引[隐藏]1通过nets ...

  10. bzoj3721 [PA2014 Final] Bazarek

    Description 有n件商品,选出其中的k个,要求它们的总价为奇数,求最大可能的总价. Input 第一行一个整数n(1<=n<=1000000),表示商品数量.接下来一行有n个整数 ...