<p>I would like to be able to fetch a web page's html and save it to a <code>String</code>, so I can do some processing on it.  Also, how could I handle various types of compression.</p>

<p>How would I go about doing that using Java?</p>

Well, you could go with the built-in libraries such as
URL
and
URLConnection
, but they don't give very much control.
Personally I'd go with the
Apache HTTPClient
library.
Edit:
HTTPClient has been set to
end of life
by Apache. The replacement is:
HTTP Components