网络三大基石
-
html
-
http
-
url
URI、URL、URN
-
URI:统一资源标志符(Universal Resource Identifier),用来标识抽象或物理资源的一个紧凑字符串
-
URL:统一资源定位符(Uniform Resource Locator),定位资源得主要访问机制的字符串。一个标准的URL包括:
-
protocol n.协议;草案;礼仪
-
host 主机名
-
port 端口
-
path 路径
-
parameter 参数--->GET请求带的参数,以?开始&区分
-
anchor 锚点--->用于同一个页面或同一个网站的跳转。(html当中的a标签--->定位)
-
-
通常的URL组成部分:
-
协议--->应用层协议
-
存放资源的主机域名
-
端口号
-
资源文件名称
-
-
URN:统一资源名称(Universal Resource Name),通过特定命名空间中的唯一名称或ID来标识资源
Java中的URL类
-
URL表示统一资源定位符,指向万维网上的“资源”的指针。
构造器:
URL(String spec)
URL(String protocol, String host, int port, String file)
URL(String protocol, String host, int port, String file, URLStreamHandler handler)
URL(String protocol, String host, String file)
URL(URL context, String spec)
URL(URL context, String spec, URLStreamHandler handler)
实例demo
package netstudy;
import java.net.MalformedURLException;
import java.net.URL;
/**
* URL:统一资源定位器
* 互联网三大基石:html、http、url
* 用于区分资源、定位资源
* 组曾部分:
* 1、协议--->网络协议http、https
* 2、域名、计算机名
* 3、端口
* 4、请求资源
* http://www.baidu.com:80/index.html?uname=Lucifer#a(#a是锚点)
* @since JDK 1.8
* @date 2021/6/24
* @author Lucifer
*/
public class URLTestNo1 {
public static void main(String[] args) throws MalformedURLException {
URL url = new URL("http://www.baidu.com:80/index.html?uname=Lucifer#a");
/*获取四个值*/
System.out.println("协议:" + url.getProtocol());
System.out.println("IP:" + url.getHost());
System.out.println("请求资源:" + url.getFile());
System.out.println("请求资源:" + url.getPath());
System.out.println("端口:" + url.getPort());
/*
无法访问的域名端口返回-1
*/
//参数
System.out.println("参数:" + url.getQuery());
//锚点
System.out.println("锚点" + url.getRef());
}
}