URL 稱為統一資源定位符,它隻是一串文本,用於標識 Internet 上的所有資源,告訴我們資源的地址、如何與其通信以及從中檢索某些內容。
Components of a URL
URL 可以有多種形式。然而,最通用的遵循 three-components 係統,如下所示:
- Protocol: 這裏的協議是HTTP
- Hostname:資源所在的計算機的名稱。
- 文件名:計算機上文件的路徑名。
- 端口號:要連接的端口號(通常是可選的)。
URL類
URL 類是訪問 Internet 上任何可用資源的門戶。類 URL 代表統一資源定位符,它是指向萬維網上 “resource” 的指針。資源可以指向簡單的文件或目錄,也可以引用更複雜的對象,例如對數據庫或搜索引擎的查詢。
URL 類的構造函數
- URL(字符串地址)拋出 MalformedURLException:它從指定的字符串創建一個 URL 對象。
- URL(字符串協議、字符串主機、字符串文件):根據指定的協議、主機和文件名創建 URL 對象。
- URL(字符串協議、字符串主機、int端口、字符串文件):根據協議、主機、端口和文件名創建 URL 對象。
- URL(URL 上下文、字符串規範):通過在給定上下文中解析給定規範來創建 URL 對象。
- URL(字符串協議、字符串主機、int 端口、字符串文件、URLStreamHandler 處理程序):
根據指定的協議、主機、端口號、文件和處理程序創建 URL 對象。 - URL(URL 上下文、字符串規範、URLStreamHandler 處理程序):
通過在指定上下文中使用指定處理程序解析給定規範來創建 URL。
Important Methods used in URL class
方法 | 執行的操作 |
---|---|
getAuthority() | 返回 URL 的權限部分,如果為空則返回 null |
getDefaultPort() | 返回使用的默認端口 |
getFile() | 返回文件名。 |
getHost() | 以 IPv6 格式返回 URL 的主機名 |
getPath() | 返回 URL 的路徑,如果為空則返回 null |
getPort() | 返回與 URL 指定的協議關聯的端口 |
getProtocol() | 返回 URL 使用的協議 |
getQuery() | 返回 URL 的查詢部分。查詢是 URL 中‘?’之後的部分。每當使用邏輯來顯示結果時,URL 中都會有一個查詢字段。它類似於查詢數據庫。 |
getRef() | 返回 URL 對象的引用。通常,引用是 URL 中用“#”標記的部分。您可以通過在 Google 上查詢任何內容並查看“#”後麵的部分來查看工作示例 |
toString() | 與任何類中一樣,toString() 返回給定 URL 對象的字符串表示形式。 |
例子:
Java
// Java program to demonstrate working of URL
// Importing required classes
import java.net.MalformedURLException;
import java.net.URL;
// Main class
// URL class
public class GFG {
// Main driver method
public static void main(String[] args)
throws MalformedURLException
{
// Creating a URL with string representation
URL url1 = new URL(
"https://www.google.co.in/?gfe_rd=cr&ei=ptYq"
+ "WK26I4fT8gfth6CACg#q=geeks+for+geeks+java");
// Creating a URL with a protocol,hostname,and path
URL url2 = new URL("http", "www.geeksforgeeks.org",
"/jvm-works-jvm-architecture/");
URL url3 = new URL(
"https://www.google.co.in/search?"
+ "q=gnu&rlz=1C1CHZL_enIN71"
+ "4IN715&oq=gnu&aqs=chrome..69i57j6"
+ "9i60l5.653j0j7&sourceid=chrome&ie=UTF"
+ "-8#q=geeks+for+geeks+java");
// Printing the string representation of the URL
System.out.println(url1.toString());
System.out.println(url2.toString());
System.out.println();
System.out.println(
"Different components of the URL3-");
// Retrieving the protocol for the URL
System.out.println("Protocol:- "
+ url3.getProtocol());
// Retrieving the hostname of the url
System.out.println("Hostname:- " + url3.getHost());
// Retrieving the default port
System.out.println("Default port:- "
+ url3.getDefaultPort());
// Retrieving the query part of URL
System.out.println("Query:- " + url3.getQuery());
// Retrieving the path of URL
System.out.println("Path:- " + url3.getPath());
// Retrieving the file name
System.out.println("File:- " + url3.getFile());
// Retrieving the reference
System.out.println("Reference:- " + url3.getRef());
}
}
輸出:
https://www.google.co.in/?gfe_rd=cr&ei=ptYqWK26I4fT8gfth6CACg#q=geeks+for+geeks+java https://www.geeksforgeeks.org/jvm-works-jvm-architecture/ Different components of the URL3- Protocol:- https Hostname:- www.google.co.in Default port:- 443 Query:- q=gnu&rlz=1C1CHZL_enIN714IN715&oq=gnu&aqs=chrome..69i57j69i60l5.653j0j7&sourceid=chrome&ie=UTF-8 Path:- /search File:- /search?q=gnu&rlz=1C1CHZL_enIN714IN715&oq=gnu&aqs=chrome..69i57j69i60l5.653j0j7&sourceid=chrome&ie=UTF-8 Reference:- q=geeks+for+geeks+java
相關用法
- Java URL getAuthority()用法及代碼示例
- Java URL getDefaultPort()用法及代碼示例
- Java URL getFile()用法及代碼示例
- Java URL getHost()用法及代碼示例
- Java URL getPath()用法及代碼示例
- Java URL getPort()用法及代碼示例
- Java URL getProtocol()用法及代碼示例
- Java URL getQuery()用法及代碼示例
- Java URL getRef()用法及代碼示例
- Java URL getUserInfo()用法及代碼示例
- Java URL sameFile()用法及代碼示例
- Java URL toExternalForm()用法及代碼示例
- Java URL toURI()用法及代碼示例
- Java URL和URN的區別用法及代碼示例
- Java URI getAuthority()用法及代碼示例
- Java URI getHost()用法及代碼示例
- Java URI getPath()用法及代碼示例
- Java URI getQuery()用法及代碼示例
- Java URI getRawAuthority()用法及代碼示例
- Java URI getRawPath()用法及代碼示例
- Java URI getRawQuery()用法及代碼示例
- Java URI getRawUserInfo()用法及代碼示例
- Java URI getUserInfo()用法及代碼示例
- Java URI和URN的區別用法及代碼示例
- Java UUID randomUUID()用法及代碼示例
注:本文由純淨天空篩選整理自佚名大神的英文原創作品 URL Class in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。