Chapter 15. URLConnections
URLConnection
is an abstract class that represents an active connection
to a resource specified by a URL. The URLConnection
class has two different but
related purposes. First, it provides more control over the interaction
with a server (especially an HTTP server) than the URL
class. With a URLConnection
, you can inspect the header sent
by the server and respond accordingly. You can set the header fields used
in the client request. You can use a URLConnection
to download binary files. Finally,
a URLConnection
lets you send data back
to a web server with POST or PUT and use other HTTP request methods. We
will explore all of these techniques in this chapter.
Second, the URLConnection
class
is part of Java’s protocol handler mechanism, which also includes the URLStreamHandler
class. The idea behind protocol
handlers is simple: they separate the details of processing a protocol
from processing particular data types, providing user interfaces, and
doing the other work that a monolithic web browser performs. The base
java.net.URLConnection
class is
abstract; to implement a specific protocol, you write a subclass. These
subclasses can be loaded at runtime by applications. For example, if the
browser runs across a URL with a strange scheme, such as
compress, rather than throwing up its hands and issuing an error message, it can download a protocol handler for this unknown protocol and use it to communicate with the server. Writing protocol handlers is the subject ...
Get Java Network Programming, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.