统一资源标识符和统一资源定位符区别

从JDK1.5开始,java.net包对统一资源定位符(uniform resource locator URL)和统一资源标识符(uniform resource identifier URI)作了非常有用的区分

URI是个纯粹的句法结构,用于指定标识Web资源的字符串的各个不同部分。URL是URI的一个特例,它包含了定位Web资源的足够信息。

在Java类库中,URI类不包含任何访问资源的方法,它唯一的作用就是解析。相反的是,URL类可以打开一个到达资源的流。因此URL类只能作用于那些 Java类库知道该如

何处理的模式

1.URI:统一资源标识符(uniform resource identifier)

Web上可用的每种资源如HTML文档、图像、视频片段、程序等都是一个来URI来定位的。

URI一般由三部组成:

①访问资源的命名机制

②存放资源的主机名

③资源自身的名称,由路径表示,着重强调于资源。

例如:/ServletDemo/mydemo3

2.URL:统一资源定位符(uniform resource locator)

URLInternet上用来描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上,特别是著名的Mosaic

采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。

URL一般由三部组成:

①协议(或称为服务方式)

②存有该资源的主机IP地址(有时也包括端口号)

③主机资源的具体地址。如目录和文件名等

例如:http://localhost:8080/ServletDemo/mydemo3

3.URN:统一资源名称 (Uniform Resource Name) 

唯一标识一个实体的标识符,但是不能给出实体的位置。系统可以先在本地寻找一个实体,在它试着在Web上找到该实体之前。它也允许Web位置改变,然而这个

实体却还是能够被找到。

标识持久性Internet资源。URN可以提供一种机制,用于查找和检索定义特定命名空间的架构文件。尽管普通的URL可以提供类似的功能,但是在这方面,URN更加强

大并且更容易管理,因为URN可以引用多个URL。

与URL不同,URN与地址无关。URN和URL都属于URI。

你可能感兴趣的:(JavaSE)