URL、URLConnection、HttpURLConnection理解

来源:互联网 发布:鼠标手写输入软件 编辑:程序博客网 时间:2024/05/17 04:20

首先看下Java进行http请求的代码:

URLConnection conn = nullURL u = new URL(url)conn = u.openConnection()conn.setRequestMethod('POST')conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");conn.setRequestProperty("Content-Length", String.valueOf(bytes?.length ?: 0));conn.setRequestProperty("Content-Language", "en-US");conn.setConnectTimeout(timeout)conn.setReadTimeout(timeout)conn.setUseCaches(false);conn.setDoInput(true);conn.setDoOutput(true);

1.主要概念:URL、URLConnection、HttpURLConnection
2.URLConnection的实例都是通过URL的openConnection()方法获取,常用的http请求对象都是返回HttpURLConnection子类的实例。
3.URL类可支持多种网络协议,如:http、https、ftp等,它通过Hashtable<String,URLStreamHandler> handlers存放多种协议的URLStreamHandler实现,handler的主要工作包括设置默认端口号、调用openConnection()方法获取相应URLConnection子类实例,如可以获取HttpURLConnection,实例通过URLStreamHandlerFactory工厂类创建,工厂类需要Tomcat等服务器自行实现;URL类的openConnection()其实就是调用了handler的openConnection()方法;

0 0
原创粉丝点击