JAVA URI URL 区别
- String urlString = "http://192.168.21.77:8080/swp/mainPage?aa=11&bb%3D22";
- URI uri = URI.create(urlString);
- System.out.println(uri.getPath());
- System.out.println(uri.getQuery());//解码
- URL url2 = new URL(urlString);
- System.out.println(url2.getQuery());//不解码
URI可以解码
也可以使用 URLEncoder 和 URLDecoder 类,但是只适用于 HTML 形式的编码,它与 RFC2396 中定义的编码机制不同。
mailto:cay@horstman.com
则不属于定位符,因为根据该标识符无法定位任何资源。像这样的URI我们称之为URN(统一资源名称)。
在Java类库中,URI类不包含任何访问资源的方法,它唯一的作用就是解析。相反的是,URL类可以打开一个到达资源的流。因此URL类只能作用于那些Java类库知道该如何处理的模式,例如:http:,https:,ftp:,本地文件系统(file:),和Jar文件(jar:)。
URI类的作用之一是解析标识符并将它们分解成各个不同的组成部分。你可以用以下方法读取它们:
getSchema
getHost
getPort
getPath
getQuery
URI类的另一个作用是处理绝对标识符和相对标识符。如果存在一个如下的绝对URI:
http://docs.mycompany.com/api/java/net/serversocket.html
和一个如下的相对URI:
../../java/net/socket.html#Socket()
那么你可以将它们合并成一个绝对URI:
http://docs.mycompany.com/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
JAVA URI URL 区别的更多相关文章
- 【转】URL和URI的区别
[转]URL和URI的区别 译者:华科小涛:http://www.cnblogs.com/hust-ghtao/: 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还 ...
- URI/URL/URN的联系和区别
下面是我整理的一些关于他们的描述. URI,是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源. 而URL是uniform resource locato ...
- 一招明白URL和URI的区别
URL和URI的区别(示例): URL[统一资源定位器]: http://localhost:8080/api/account/queryAccountInfo URI[统一资源定位符]: /api/ ...
- URL与URI的区别和联系
转自:https://www.cnblogs.com/chengdabelief/p/6635045.html 简单理解是这样的:理解URI和URL的区别,我们引入URN这个概念. URI = Uni ...
- [译]URL和URI的区别
译者:华科小涛:http://www.cnblogs.com/hust-ghtao/: 初学http协议,就被这两个相似的术语搞蒙了,查了很多资料,总算搞清楚了.(找资料还是英文啊,靠谱...). 本 ...
- java URI
URI是对URL的抽象,不仅包括统一资源定位符,还包括统一资源名,在java中URI用java.net.URI类表示,这个类与java.net.URL类的区别表现在: URI类完全有关于资源的标识和U ...
- java中URL和File的相互转化
首先,想比较一下这两者的不同.URL用于网络,所以带有明显的protocol,而且对于中文及符号支持的很不好.File就是我们平常系统中的文件路径了,对于中文及符号都支持,但是已经没有protocol ...
- URI -URL-URN区别
URI -URL-URN区别 URI (uniform resource identifier) 统一资源标识符,用来唯一的标识一个资源URL(uniform resource locator) ...
- Java Magic. Part 1: java.net.URL
Java Magic. Part 1: java.net.URL @(Base)[JDK, url, magic, 黑魔法] 英文原文 转载请写明:原文地址 系列文章: -Java Magic. Pa ...
随机推荐
- (C/C++学习笔记) 十一. 数组
十一. 数组 ● 基本概念 数组:数组是一组在内存中依次连续存放的(数组所有元素在内存中的地址是连续的).具有同一类型的数据变量所组成的集合体.其中的每个变量称为数组元素,它们属于同一种数据类型,数组 ...
- Python 爬虫常用库(九)
- java.lang.NoClassDefFoundError: Could not initialize class org.jfree.chart.JFreeChart
最近在进行利用jfreechart生成图表时发现,项目在本地运行的好好的,一部署到服务器(linux系统)上就不行,报这样的错误: java.lang.NoClassDefFoundError: Co ...
- Python 文件修改
# 需求: 把好人换成sb # 必须: # 1. 先从文件中读取内容 # 2. 把要修改的内容进行修改 # 3. 把修改好的内容写人一个新文件 # 4. 删除掉原来的文件 # 5. 把新文件重命名成原 ...
- 触电(by quqi99)
高压电线杆相关的触电方式主要是两种: 一是跨步电压,高压电线落在地面时,如果人恰好在这个范围内步行时,就会从一只脚到跨下再到另一只脚到地形成回路,这叫跨步电压.步子越大,电压越大(以落地点为圆心向外电 ...
- 新手小白Linux(Centos6.5)部署java web项目(mongodb4.0.2安装及相关操作)
红帽企业或CentOS的Linux上安装MongoDB的社区版: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat ...
- 【论文解读】行人检测:What Can Help Pedestrian Detection?(CVPR'17)
前言 本篇文章出自CVPR2017,四名作者为Tsinghua University,Peking University, 外加两名来自Megvii(旷视科技)的大佬. 文章中对能够帮助行人检测的ex ...
- DBWR进程
--查询dbwr进程号 select pname,spid from v$process where pname like 'DBW%'; PNAME SPID----- -------------- ...
- 空格填充器(alignBySpace)
/******************************************************************* * 空格填充器(alignBySpace) * 声明: * 1 ...
- unbtu使用笔记
安装fcitx输入法: sudo apt-get install fcitx-table-wbpy 再配置http://www.cnblogs.com/imsoft/p/4368550.html vi ...