请类比推理的通俗例子的介绍下url和uri的区别和联系 有例子最好

JAVA(284)
URI可以解码
注意,URI 类在某些特定情况下对其组成字段执行转义。建议使用 URI 管理 URL 的编码和解码,并使用 toURI() 和 URI.toURL() 实现这两个类之间的转换。&
也可以使用 URLEncoder 和 URLDecoder 类,但是只适用于 HTML 形式的编码,它与 RFC2396 中定义的编码机制不同。&
URI是个纯粹的句法结构,用于指定标识Web资源的字符串的各个不同部分。URL是URI的一个特例,它包含了定位Web资源的足够信息。其他URI,比如:&
则不属于定位符,因为根据该标识符无法定位任何资源。像这样的URI我们称之为URN(统一资源名称)。&
在Java类库中,URI类不包含任何访问资源的方法,它唯一的作用就是解析。相反的是,URL类可以打开一个到达资源的流。因此URL类只能作用于那些Java类库知道该如何处理的模式,例如:http:,https:,ftp:,本地文件系统(file:),和Jar文件(jar:)。&
URI类的作用之一是解析标识符并将它们分解成各个不同的组成部分。你可以用以下方法读取它们:&
getSchema&
URI类的另一个作用是处理绝对标识符和相对标识符。如果存在一个如下的绝对URI:&
/api/java/net/serversocket.html&
和一个如下的相对URI:&
../../java/net/socket.html#Socket()&
那么你可以将它们合并成一个绝对URI:&
/api/java/net/socket.html#Socket()&
这个过程被称为相对URL的转换。&
与此相反的过程成为相对化。例如:假设你有一个基本URI:&
http://docs.mycompany/api&
和另一个URI:&
http://docs.mycompany/api/java/lang/String.html&
那么相对化后的URI就是:&
java/lang/String.html&
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:997398次
积分:11025
积分:11025
排名:第1218名
原创:79篇
转载:830篇
评论:99条
(26)(5)(42)(46)(105)(81)(67)(37)(4)(1)(12)(12)(24)(28)(69)(32)(34)(20)(1)(7)(10)(13)(36)(1)(2)(12)(21)(6)(8)(16)(1)(11)(4)(3)(6)(4)(2)(2)(2)(3)(4)(3)(2)(1)(5)(4)(1)(6)(6)(4)(2)(6)(5)(7)(1)(7)(15)(5)(1)(16)(5)URI,URL,URN
从上面的那幅图可以看出来,一共有三个不同的概念URI,URL,URN。这讨论这样的问题时,最好的方法就是回到原点啊,这里我们在里面收集了点资料:
&A Uniform Resource Identifier (URI) 是一个紧凑的字符串用来标示抽象或物理资源。&
&A URI 可以进一步被分为定位符、名字或两者都是. 术语&Uniform Resource Locator& (URL) 是URI的子集, 除了确定一个资源,还提供一种定位该资源的主要访问机制(如其网络&位置&)。&
那我们无所不知的维基百科把这段消化的很好,并描述的更加形象了:
&URI可以分为URL,URN或同时具备locators 和names特性的一个东西。URN作用就好像一个人的名字,URL就像一个人的地址。换句话说:URN确定了东西的身份,URL提供了找到它的方式。&
通过这些描述我们可以得到一些结论:
首先,URL是URI的一种(通过那个图就看的出来吧)。所以有人跟你说URL不是URI,他就错了呗。但也不是所有的URI都是URL哦,就好像蝴蝶都会飞,但会飞的可不都是蝴蝶啊,你让苍蝇怎么想!
让URI能成为URL的当然就是那个&访问机制&,&网络位置&。e.g.&http://&or&ftp://.。
URN是唯一标识的一部分,就是一个特殊的名字。
  下面就来看看例子吧,当来也是来自权威的RFC:
ftp://ftp.is.co.za/rfc/rfc1808.txt&(also a URL because of the protocol)
http://www.ietf.org/rfc/rfc2396.txt&(also a URL because of the protocol)
ldap://[2001:db8::7]/c=GB?objectClass?one&(also a URL because of the protocol)
mailto:John.&(also a URL because of the protocol)
systems.www.servers.unix&(also a URL because of the protocol)
tel:+1-816-555-1212
telnet://192.0.2.16:80/&(also a URL because of the protocol)
urn:oasis:names:specification:docbook:dtd:xml:4.1.2
  这些全都是URI, 其中有些事URL. 哪些? 就是那些提供了访问机制的.
下面到了回答问题的时候了:
当我们替代web地址的时候,URI和URL那个更准确?
基于我读的很多的文章,包括RFC,我想说URI更准确。
别急,我有我的理由:
我们经常使用的URI不是严格技术意义上的URL。例如:你需要的文件在. 这是URI,但不是URL--系统可能会对很多协议和端口都做出正
确的反应。
你去&和.可能得到完全不同的内容。这种情况可能更加普遍,想想不同谷歌域名上的不同服务啊。
所以,用URI吧,这样你通常技术上是正确的,URL可不一定。最后&URL&这个术语正在被弃用。所以明智吧少年!
If you don&t mind being &that guy&,&URI&is probably the more accurate term to use. But if you are in the linguist / &use what&s understood& camp, feel free to go with&URL.
阅读(...) 评论()简单理解就是URL是大门,URI是门里的每个屋子。
URL是Uniform Resource Location的缩写,既然楼主知道我就不啰嗦了
URI 是在 Internet 上定位资源的常规方案,它的着重点在于资源,而不是位置。理论上,URI可以查找镜像文档的最近的副本,或者定位从一个站点移动到另一个站点的文档。
URI是Web上可用的每种资源 - HTML文档、图像、视频片段、程序等 - 由一个通过通用资源标志符(Universal ResourceIdentifier, 简称&URI&)进行定位。
URI一般由三部分组成:
1. 访问资源的命名机制。
2. 存放资源的主机名。
3. 资源自身的名称,由路径表示。
注:大多数人可能熟悉&URL&,而不是URI。URL是URI命名机制的一个子集。
区别就是URI定义资源,而URL不单定义这个资源,还定义了如何找到这个资源。比如说,一个服务器上,到一个文件夹/网页的绝对地址(absolutepath)就是URI。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:995642次
积分:11855
积分:11855
排名:第1029名
原创:253篇
评论:151条
(1)(10)(4)(5)(12)(12)(6)(6)(7)(7)(5)(9)(10)(14)(13)(9)(9)(9)(17)(7)(12)(19)(53)}

我要回帖

更多关于 知难行易的通俗例子 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信