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. 基于jQuery简单实用的Tabs选项卡插件

    jQuery庞大的插件库总是让人欢喜让人忧,如何从庞大的插件库里挑出适合自己的插件,总是让很多缺少经验的朋友头疼的事!今天为大家推荐几款简单实用的Tabs选项卡插件,推荐理由:简单易用灵活,样式美观, ...

  2. a标签加绝对定位在图片上面,a的链接和块状属性block失效,而且是所有IE版本都失效的

    谷歌和火狐浏览器下测试是正常的,IE下鼠标移过logo是没有超链接的提示的 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitio ...

  3. Symfony2 Doctrine从现有Database生成Entity(转载自http://blog.it985.com/6809.html)

    在我的以前一章Symfony之十分钟入门说了怎样生成数据库,然后设计实体Entity,再同步数据库的表结构,一般我们的顺序都是这样:生成数据库->设计实体Entity->同步数据库表结构. ...

  4. [Python shelve模块Error]bsddb.db.DBPageNotFoundError: (-30986, 'DB_PAGE_NOTFOUND: Requested page not found')

    在用scrapy抓数据,用shelve保存时出现了这个Error,目标是储存一串unicode字符串组成的列表,exception代码是tempbase['joke']=joke_list,测试只要j ...

  5. Django 反向生成 从数据库生成Model

    Django 反向生成 从数据库生成Model 使用Django生成Model python manage.py inspectdb或python manage.py inspectdb > m ...

  6. hdu 3047 Zjnu Stadium

    http://acm.hdu.edu.cn/showproblem.php?pid=3047 带权并差集 #include <cstdio> #include <cstring> ...

  7. 关于vs的lib文件和dll文件

    一.LIB文件概念 一个lib文件是obj文件的集合.当然,其中还夹杂着其他一些辅助信息,目的是为了让编译器能够准确找到对应的obj文件 二.与DLL的区别 (1)lib是编译时需要的,dll是运行时 ...

  8. input表单 radio对象的判断选择

    /*选择约见对象*/ var lenth=$('input[name="single"]').length; var len=0; $('input[name="sing ...

  9. poj 1088 滑雪问题

    滑雪问题 import java.util.Scanner; public class Main{ static int a[][],r,c; public static void main(Stri ...

  10. debian安装mysql

    http://thirteen-tw.blogspot.com/2008/09/debian-mysql-server.html 安裝MySQL-Server debian:~# apt-get in ...