URL
class provides several methods that let you query
URL
objects.
You can get the protocol, authority, host name,
port number, path, query, filename, and reference from a URL using these accessor methods:
getProtocol
getAuthority
getHost
getPort
getPort
method returns an integer that is the
port number. If the port is not set, getPort
returns -1.
getPath
getQuery
getFile
getFile
method returns the same as getPath
,
plus the concatenation of the value of getQuery, if any.
-
getRef
- Returns the reference component of the URL.
You can use these getXXX
methods to get information
about the URL regardless of the constructor that you used to create the
URL object.
The URL class, along with these accessor methods, frees you from ever having to parse URLs again! Given any string specification of a URL, just create a new URL object and call any of the accessor methods for the information you need. This small example program creates a URL from a string specification and then uses the URL object's accessor methods to parse the URL:
import java.net.*; import java.io.*; public class ParseURL { public static void main(String[] args) throws Exception { URL aURL = new URL("http://example.com:80/docs/books/tutorial" + "/index.html?name=networking#DOWNLOADING"); System.out.println("protocol = " + aURL.getProtocol()); System.out.println("authority = " + aURL.getAuthority()); System.out.println("host = " + aURL.getHost()); System.out.println("port = " + aURL.getPort()); System.out.println("path = " + aURL.getPath()); System.out.println("query = " + aURL.getQuery()); System.out.println("filename = " + aURL.getFile()); System.out.println("ref = " + aURL.getRef()); } }
protocol = http authority = example.com:80 host = example.com port = 80 path = /docs/books/tutorial/index.html query = name=networking filename = /docs/books/tutorial/index.html?name=networking ref = DOWNLOADING