获取 URL 组件的Java程序
Java网络:由于Java程序被编写为在多个设备上执行,因此多个设备意味着远程位置的计算机。因此,两个设备可以在与某个网络连接的相同位置或不同位置进行通信。对于Java网络,需要使用“net”包。它适用于两种不同的协议,即 TCP 和 UDP。 TCP 在Java中是首选,因为它是面向连接的协议,而 UDP 是无连接协议。因此,可靠性低于 UDP。
- TCP代表传输控制协议
- UDP 代表用户数据报协议
概念: URL 类和内置的getProtocol() 方法
URL Class 是一个统一的资源定位器,它指向万维网上的一个资源。
语法:用于导入 URL 类:
import java.util.net ;
获取协议() 这 getProtocol()函数是 URL 类的一部分。函数getProtocol() 返回指定 URL 的协议。
函数签名:
public String getProtocol() ;
句法:
url.getProtocol();
参数:该函数不需要任何参数
返回类型:函数返回字符串类型
插图:现在,通过插图进一步了解 URL 类的内部工作:
Considering Random URL: https://www.geeksforgeeks.com/javaexamples/net_singleuser.htm
Here,
Protocol Used: http
Host name: www.geeksforgeeks.com
Path is file accessing : javaexaamples/net_singleuser.htm
Port number: 443
这里使用的是 HTTP 协议,从名称可以很容易看出 网址本身。
Java.net.URL 类表示一个 URL。有构造函数来创建新的 URL 和方法来解析 URL 的各个部分。但是,该类别的核心是允许您从 URL 驱动 InputStream 以便您从服务器读取数据的方法。
URL 类与协议和内容处理程序密切相关。目标是将正在下载的信息与不会下载的协议分开。协议处理程序负责与服务器通信,即将字节从服务器移动到客户端。它处理与服务器和任何标头的任何必要协商。它的工作是仅返回请求的数据或文件的实际字节。内容处理程序获取这些字节并将它们转换为一些非常Java的对象,如 InputStream 或 ImageProducer。
URL 的组成部分:一个 URL 可以有多种形式。然而,最一般的遵循三组件系统-
- 协议:HTTP是这里的协议
- 主机名:主机的系统名称。
- 文件名:系统上文件的路径名。
- 端口号:要附加到的端口号(通常是可选的)。
实现:下面是获取 URL 部分的Java代码:
Java
// Java Program to Get Components of a URL
import java.util.*;
// Importing URL class
import java.net.URL;
public class GFG {
// Main driver method
public static void main(String[] args) throws Exception
{
// Making object of URL type
// URL url = new URL(args[0]);
// Url taken for consideration as input URL
URL url = new URL(
"https://www.geeksforgeeks.com/javaexamples/net_singleuser.htm");
// Print the string representation of the URL.
System.out.println("URL is:" + url.toString());
// Retrieve the protocol of URL
System.out.println("protocol is: "
+ url.getProtocol());
// Retrieve the filename of URL
System.out.println("file name is: "
+ url.getFile());
// Retrieve the hostname of URL
System.out.println("host is: " + url.getHost());
// Retrieve the path of URL
System.out.println("path is: " + url.getPath());
// Retrieve the port of URL
System.out.println("port is: " + url.getPort());
System.out.println("default port is: "
+ url.getDefaultPort());
}
}
URL is:https://www.geeksforgeeks.com/javaexamples/net_singleuser.htm
protocol is: https
file name is: /javaexamples/net_singleuser.htm
host is: www.geeksforgeeks.com
path is: /javaexamples/net_singleuser.htm
port is: -1
default port is: 443