* URLConnection
http://www.jabook.org/jabook/jabook07/10000_10000_50000__10000_10000_50000.html
* HTTPClient
http://programmers.tistory.com/entry/HTTPclient의-사용-1
* URLConnection 과 HTTPClient 비교
http://www.mimul.com/pebble/default/2007/06/09/1181399220000.html - 출처
URLConnection과 HTTPClient의 기능들을 비교하여 불필요한 라이브러리의 오용을 막을 수 있는 비교 자료를 제 피씨 백업하다가 찾았습니다. 죽어있던 지식이 블로그를 통해서 빛을 봤으면 합니다. ^^
URLConnection |
HTTPClient | |
---|---|---|
Methods |
Only HEAD, GET, POST, PUT, DELETE, TRACE and OPTIONS. |
Has HEAD, GET, POST, PUT, DELETE, TRACE and OPTIONS, plus any arbitrary method, such as those from WEBDav and IPP. |
Response Codes |
The response code, headers, and body can only be read if the response code was less than 400 - for any 4xx or 5xx response code, you only get IOException's when trying to get any response info. |
The response code, all headers, and the body can always be read normally. |
Proxies and SOCKS |
Full support (SOCKS: Version 4 only) |
Full support (SOCKS: both version 4 and 5) |
Authorization |
Support for Basic and an early version of Digest in JDK 1.2 or later, only. The current version of Digest authentication (which is the one supported by most servers) is not supported, and due to a bug of theirs they won't even recognize the digest info returned by Apache. |
Support for Basic and Digest Authentication; other schemes can be added. |
Cookies |
No. |
Yes. |
True request output streams |
No - all data is fully buffered before it is sent. |
Yes - HttpOutputStream will stream directly to the socket. |
True response input streams |
Under JDK 1.2, yes; under JDK 1.3 only if the response is not sent using the chunked encoding (this excludes most server-push responses). |
Yes. |
Persistent Connections |
HTTP/1.0 Keep-Alive's in JDK 1.1 and JDK 1.2; JDK 1.3 has HTTP/1.1 persistence. |
Supports HTTP/1.0 Keep-Alive's and HTTP/1.1 persistence. |
Pipelining of Requests |
No. |
Yes. |
Can set Timeouts |
No. |
Yes. |
Can handle protocols other than HTTP |
Yes (e.g. ftp, gopher, mailto, and file are provided) |
No. |
Can do HTTP over SSL (https) |
Appropriate SSL package (such as JSSE) which provides an appropriate client must be installed. |
Patches are available for various free and commercial SSL packages |
Source code available |
No. |
Yes. |
'java' 카테고리의 다른 글
SI 프로젝트에서도 애자일 프로세스는 가능한가? (0) | 2008.07.28 |
---|---|
HTTPClient 3.0 (0) | 2008.07.25 |
javac 옵션 (0) | 2008.07.09 |
IBM HOST CICS Transaction 연동 (NT) - 자바서비스넷 (0) | 2008.07.03 |
jad 옵션 (0) | 2008.06.05 |