您现在的位置是:首页 >

java是网络编程语言吗 Java网络编程之URI、URL研究专题一(图)

火烧 2022-07-05 18:17:27 1056
Java网络编程之URI、URL研究专题一 图   URI URL和URN是识别 定位和命名互联网上的资源的标准途径 本文分析了URI URL和URN和Java API的URI和URL类(以及与URL
java是网络编程语言吗 Java网络编程之URI、URL研究专题一(图)

Java网络编程之URI、URL研究专题一(图)  

  URI URL和URN是识别 定位和命名互联网上的资源的标准途径 本文分析了URI URL和URN和Java API的URI和URL类(以及与URL相关的类) 并演示了如何在程序中使用这些类      年Tim Berners Lee发明了互联网(World Wide Web) WWW被认为是全球互连的实际的和抽象的资源的集合 它按需求提供信息实体 通过互联网访问 实际的资源的范围从文件到人 抽象的资源包括数据库查询     因为要通过多样的方式识别资源(人的名字可能相同 然而计算机文件只能通过唯一的路径名称组合访问) 所以需要标准的识别WWW资源的途径 为了满足这种需要 Tim Berners Lee引入了标准的识别 定位和命名的途径 URI URL和URN      URI URL和URN是什么?    体系中的URI URL和URN是彼此关联的 URI的范畴位于体系的顶层 URL和URN的范畴位于体系的底层 这种排列显示URL和URN都是URI的子范畴 如图 所示      图 URI URL和URN之间的层次关系 URL和URN是URI的子范畴    URI表示的是统一的资源标识 它是以某种统一的(标准化的)方式标识资源的简单字符串 典型情况下 这种字符串以scheme(命名URI的名字空间的标识符 一组相关的名称)开头 语法如下     [scheme:] scheme specific part    URI以scheme和冒号开头 Scheme用大写/小写字母开头 后面为空或者跟着更多的大写/小写字母 数字 加号 减号和点号 冒号把scheme与scheme specific part分开了 并且scheme specific part的语法和语义(意思)由URI的名字空间决定     其中一个例子是 其中是scheme //是 scheme specific part 并且它的scheme与scheme specific part被冒号分开了     我们可以把URI按照绝对的或相对的分类 绝对的URI指以scheme(后面跟着冒号)开头的URI 前面提到的就是绝对的URI的一个例子 其它的例子还有mailto: news:p lang java help和xyz://whatever 你可以把绝对的URI看作是以某种方式引用某种资源 而这种方式对标识符出现的环境没有依赖     如果使用文件系统作类比 绝对的URI类似于从根目录开始的某个文件的路径 与绝对的URI不同的 相对的URI不是以scheme(后面跟着冒号)开始的URI     它的一个例子是articles/l 你可以把相对的URI看作是以某种方式引用某种资源 而这种方式依赖于标识符出现的环境 如果用文件系统作类比 相对的URI类似于从当前目录开始的文件路径     URI可以进一步分为不透明的和分层的两类 不透明的URI指scheme specific part不是以正斜杠(/)开头的绝对的URI     其例子有news:p lang java和前面的mailto: 不透明的URI并不是用于分解的(超出了识别scheme的范畴) 因为不需要验证scheme specific part的有效性 与它不同的是 分层的URI可以是以正斜杠开头的绝对的URI或相对的URL     与不透明的URI不同 分层的URI的scheme specific part必须被分解为几个组成部分 这些组成部分是什么?分层的URI标识组件的普通子集的scheme specific part符合下面的语法     [//authority] [path] [?query] [#fragment]    可选的authority组件标识了该URI名字空间的命名机构 如果有这一部分 它就是以一对正斜杠开始的 它可以是基于服务器或基于注册的 并且它以后面的正斜杠 问号或没有其它符号结束 基于注册的授权机构组件有特定大纲的语法(本文没有讨论 因为很少使用它) 而基于服务器的授权机构组件的语法如下     [userinfo@] host [:port]    按照这种语法 基于服务器的授权机构组件可以随意的以用户信息(例如用户名)开始 后面跟着一个@符号 紧接着是主机的名称 以及冒号和端口号 例如: 就是一个基于服务器的授权机构组件 其中jeff包含了用户信息 包含了主机 包含了端口     可选的path组件根据授权机构组件(如果提供了)或大纲(如果没有授权机构组件)识别资源的定位(或位置) 路径(path)可以分成一系列的路径片断(path segment) 每个路径片断使用正斜杠与其它的路径片断隔开     如果路径的第一个路径片断以一个正斜杠开始 该路径就被认为是绝对的 否则路径就被认为是相对的 例如 /a/b/c由三个路径片断 a b和c组成了一个路径 此外 这个路径是绝对的 因为第一个路径片断(a)的前缀是正斜杠     可选的query组件识别要传递给某种资源的数据 这种资源使用该数据获取或生成其它的传递回调用者的数据 例如 x=y就是一个查询(query) 在这个查询中 x=y是传递给某种资源的数据 x是某种实体的名称 y是该实体的值 lishixinzhi/Article/program/Java/hx/201311/26272  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码