Java URL Processing
URL (Uniform Resource Locator) chiński nazywany Uniform Resource Locator, czasami jest znany jako adres strony WWW. Wyraził jako zasobu w Internecie, takie jak adres WWW lub FTP.
W tym rozdziale będziemy wprowadzać Java jest traktowana jako adres URL. URL może być podzielony na następujące sekcje.
protocol://host:port/path?query#ref
Protokoły (protokół) może być HTTP, HTTPS, FTP, a plik. port jest numerem portu. Ścieżka dla ścieżki i nazwa pliku.
Przykłady URL protokołu HTTP, co następuje:
http://www.w3cschool.cc/index.html?language=cn#j2se
Przykłady wyżej adres URL nie określa port, ponieważ protokół HTTP Domyślnym numerem portu jest 80.
Metody klasy URL
W pakiecie java.net określa klasę adresów URL, które kiedyś do czynienia z treści związanej z adresem URL. Aby utworzyć i używać klasy URL, co następuje zostały wprowadzone.
java.net.URL zapewnia sposób budować bogactwo URL i może uzyskiwać dostęp do zasobów za pośrednictwem java.net.URL.
Nie. | metoda Opis |
---|---|
1 | URL publicznej (protokół String, String host , int port plik String) wyrzuca MalformedURLException. Tworzenie URL z podanych parametrów (protokół, nazwa hosta, numer portu, nazwa pliku). |
2 | publicznego URL (protokół String, String host , plik String) wyrzuca MalformedURLException Przy użyciu określonego protokołu, nazwę hosta, nazwę pliku tworzenia URL domyślny port portu protokołu. |
3 | publicznego URL (String url) wyrzuca MalformedURLException Utworzyć ciąg URL przez dany adres URL |
4 | URL publicznej (w kontekście URL, String url ) wyrzuca MalformedURLException Użyj adresu bazowego i stworzyć względny adres URL |
URL klasa zawiera wiele metod dostępu do różnych części adresu URL, że konkretne metody i opisać w następujący sposób:
Nie. | metoda Opis |
---|---|
1 | public String getPath () Zwraca część ścieżki URL. |
2 | public String getQuery () Zwraca część zapytania URL. |
3 | public String getAuthority () Pobiera udział organ tego adresu URL. |
4 | public int getPort () Zwraca część portu URL |
5 | public int getDefaultPort () Zwraca domyślny numer portu dla protokołu. |
6 | public String getProtocol () Zwraca protokołu URL |
7 | public String getHost () Zwraca adres hosta |
8 | public String getfile () Zwraca adres URL nazwy pliku |
9 | public String getRef () Będąc kotwicy tego URL (zwane również "odniesienia"). |
10 | publicznego URLConnection OpenConnection () wyrzuca IOException Otwiera połączenie URL i uruchom klienta, aby uzyskać dostęp do zasobu. |
Przykłady
Powyższe przykłady pokazują użycie klasy java.net URL w celu uzyskania różnych częściach parametrów URL:
// 文件名 : URLDemo.java import java.net.*; import java.io.*; public class URLDemo { public static void main(String [] args) { try { URL url = new URL("../../www.w3cschool.cc/index.html-language=cn#j2se.html"); System.out.println("URL is " + url.toString()); System.out.println("protocol is " + url.getProtocol()); System.out.println("authority is " + url.getAuthority()); System.out.println("file name is " + url.getFile()); System.out.println("host is " + url.getHost()); System.out.println("path is " + url.getPath()); System.out.println("port is " + url.getPort()); System.out.println("default port is " + url.getDefaultPort()); System.out.println("query is " + url.getQuery()); System.out.println("ref is " + url.getRef()); }catch(IOException e) { e.printStackTrace(); } } }
Powyższe przykłady zebrane wyniki przedstawiają się następująco:
URL is http://www.w3cschool.cc/index.html?language=cn#j2se protocol is http authority is www.w3cschool.cc file name is /index.htm?language=cn host is www.amrood.com path is /index.html port is -1 default port is 80 query is language=cn ref is j2se
URLConnections metody klasy
OpenConnection () zwraca java.net.URLConnection.
Na przykład:
URL Jeśli łączysz protokół HTTP, metoda OpenConnection () zwraca HttpURLConnection obiekt.
Jeśli adres URL podłączeniu do pliku JAR, metoda OpenConnection () zwraca obiekt JarURLConnection.
I tak dalej ...
Metody URLConnection wymienione poniżej:
Nie. | metoda Opis |
---|---|
1 | Obiekt getContent () URL Link do pobierania treści |
2 | Obiekt getContent (klasy Class []) URL Link do pobierania treści |
3 | getContentEncoding String () Zwraca zawartość kodowanie wartości pola nagłówka. |
4 | int getContentLength () Zwraca Content-Length wartość pola nagłówka |
5 | getContentType String () Zwraca wartość pola nagłówka Content-Type |
6 | int getLastModified () Zwraca ostatniej modyfikacji wartości pola nagłówka. |
7 | długie getExpiration () Powrót wygasa wartości pól nagłówka. |
8 | długie getIfModifiedSince () IfModifiedSince zwracane wartości pól obiektu. |
9 | public void setDoInput (wejście logiczna) Połączenie URL może być wykorzystane do wejścia i / lub wyjścia. Jeśli zamierzasz korzystać z połączenia URL dla wejścia, a następnie DoInput flaga jest ustawiona na wartość true, jeśli nie zamierzasz korzystać jest ustawiona na false. Wartością domyślną jest true. |
10 | public void setDoOutput (wyjście logiczna) Połączenie URL może być wykorzystane do wejścia i / lub wyjścia. Jeśli zamierzasz korzystać z połączenia URL dla wyjścia, a następnie DoOutput flaga jest ustawiona na wartość true, jeśli nie zamierzasz korzystać jest ustawiona na false. Wartością domyślną jest false. |
11 | public InputStream getInputStream () wyrzuca IOException Zwraca URL strumienia wejściowego do czytania zasobu |
12 | public OutputStream getOutputStream () wyrzuca IOException Zwraca adres URL strumienia wyjściowego do zasobów piśmienniczych. |
13 | publicznego URL getURL () Zwraca obiektów URL URLConnection związane |
Przykłady
W poniższym przykładzie użyto adresu URL protokołu HTTP. OpenConnection powrócić obiektu HttpURLConnection.
// 文件名 : URLConnDemo.java import java.net.*; import java.io.*; public class URLConnDemo { public static void main(String [] args) { try { URL url = new URL("../../www.w3cschool.cc/index.html"); URLConnection urlConnection = url.openConnection(); HttpURLConnection connection = null; if(urlConnection instanceof HttpURLConnection) { connection = (HttpURLConnection) urlConnection; } else { System.out.println("Please enter an HTTP URL."); return; } BufferedReader in = new BufferedReader( new InputStreamReader(connection.getInputStream())); String urlString = ""; String current; while((current = in.readLine()) != null) { urlString += current; } System.out.println(urlString); }catch(IOException e) { e.printStackTrace(); } } }
Powyższe przykłady zebrane wyniki przedstawiają się następująco:
$ java URLConnDemo .....a complete HTML content of home page of amrood.com.....