当前位置: 首页 > news >正文

云南工贸网站建设中国搜索网站排名

云南工贸网站建设,中国搜索网站排名,外贸公司介绍,长宁区网站建设开之前想过直接获取url通过拼接字符串的方式实现,但是这种只是暂时的,后续地址如果有变化或参数很多,去岂不是要拼接很长,由于这些等等原因,所以找了一些方法实现 java.net.URI URI全称是Uniform Resource Identifier,也就是统一资源标识符,它是一种采用特定的语法标识一…

之前想过直接获取url通过拼接字符串的方式实现,但是这种只是暂时的,后续地址如果有变化或参数很多,去岂不是要拼接很长,由于这些等等原因,所以找了一些方法实现

java.net.URI

URI全称是Uniform Resource Identifier,也就是统一资源标识符,它是一种采用特定的语法标识一个资源的字符串表示。URI所标识的资源可能是服务器上的一个文件,也可能是一个邮件地址、图书、主机名等
URI是标识一个资源的字符串

URI的语法

URI的语法构成是:一个模式和一个模式特定部分。表示形式如下:

模式:模式特定部分
scheme:scheme specific part 

模式特定部分的表示形式取决于所使用的模式。URI当前的常用模式包括:

  1. data:链接中直接包含经过BASE64编码的数据。
  2. file:本地磁盘上的文件。
  3. ftp:FTP服务器。
  4. http:使用超文本传输协议。
  5. mailto:电子邮件的地址。
  6. magnet:可以通过对等网络(端对端P2P,如BitTorrent)下载的资源。
  7. telnet:基于Telnet的服务的连接。
  8. urn:统一资源名(Uniform Resource Name)。

URI中的模式特定部分没有固定的语法,不过,很多时候都是采用一种层次结构形式,如:

//授权机构/路径?查询参数//authority/path?query

URI的模式的组成部分可以是小写字母数字加号点(.)连号(-)

典型的URI的其他三个部分:模式特定部分,也就是授权机构;路径;查询参数

  • 分别由ASCII字母组成(也就是字母A-Z、a-z和数字0-9),此外,还可以使用标点符号-、_、.、!和~,
  • 定界符(如/、?、&和=)有其预定义的用途。
  • 所有的其他字符,包括ASCII中拉丁字母,都需要使用百分号(%)转义,转义后的格式是:%+字符按照UTF-8编码再转成16进制的字符串表示。
  • 注意一点,如果前面提到的定界符没有作为定界符使用,也需要进行转义。
  • 举个简单的例子,如URI中存在中文字符"木",木字的UTF-8编码为0xE6 0x9C 0xA8,那么它在URI中应该转义为%E6%9C%A8。Jdk中的URLEncoder或者apache-codec中的相关类库提供URI(URL)编码的功能

URI中还可以携带用户的口令,因为会有安全漏洞,所以并不常见

构造URI实例

private URI() { }                           // Used internally// 根据提供的一个uri字符串构造一个URI对象
public URI(String str) throws URISyntaxException {new Parser(str).parse(false);
}//通过 模式、用户信息、服务器地址、端口、文件路径、查询条件、片段标识构造URI
public URI(String scheme,String userInfo, String host, int port,String path, String query, String fragment)throws URISyntaxException
{String s = toString(scheme, null,null, userInfo, host, port,path, query, fragment);checkPath(s, scheme, path);new Parser(s).parse(true);
}
// 通过 模式、授权机构、文件路径、查询条件、片段标识构造URI
public URI(String scheme,String authority,String path, String query, String fragment)throws URISyntaxException
{String s = toString(scheme, null,authority, null, null, -1,path, query, fragment);checkPath(s, scheme, path);new Parser(s).parse(false);
}// 通过 模式、服务器地址、文件路径、片段标识构造URI。public URI(String scheme, String host, String path, String fragment)throws URISyntaxException{this(scheme, null, host, -1, path, null, fragment);}//通过 模式、模式特定部分和片段标识创建URI。
public URI(String scheme, String ssp, String fragment)throws URISyntaxException
{new Parser(toString(scheme, ssp,null, null, null, -1,null, null, fragment)).parse(false);
}/**
* Constructs a simple URI consisting of only a scheme and a pre-validated
* path. Provides a fast-path for some internal cases.
*/
URI(String scheme, String path) {assert validSchemeAndPath(scheme, path);this.scheme = scheme;this.path = path;
}private static boolean validSchemeAndPath(String scheme, String path) {try {URI u = new URI(scheme + ":" + path);return scheme.equals(u.scheme) && path.equals(u.path);} catch (URISyntaxException e) {return false;}
}//静态工厂方法,最终调用的是URI(String str)
public static URI create(String str) {try {return new URI(str);} catch (URISyntaxException x) {throw new IllegalArgumentException(x.getMessage(), x);}
}

这种获取实例的方法,直接查看源码便知道有哪些了

这里就说明一下一些参数的含义:

  1. scheme:协议
  2. auth
http://www.hrbkazy.com/news/4528.html

相关文章:

  • 武汉网站建设S小蝌蚪互联百度开放平台
  • 网站开发合同需要交印花税吗云南疫情最新数据消息中高风险地区
  • 做优惠券网站b2b平台推广网站
  • 模板网站建设的弊端seo优化方案项目策划书
  • 建立微信商城网站网站营销策划公司
  • wordpress 上传图片 出错百度seo和sem
  • 百度自助网站建设韩国搜索引擎排名
  • 扬州哪里做网站好seminar怎么读
  • 做网站销售怎么做google登录
  • 网站建设和营销哪个推广平台推广最靠谱
  • 网站开发技术选型网络推广运营团队
  • wordpress网站统计插件seo引擎优化专员
  • 上网服务湖南竞价优化专业公司
  • 十大个人博客网站免费友情链接
  • 怎么用python做网站微商怎么找客源人脉
  • 网站风格化设计方案下载百度安装
  • 郑州哪里有做网站百度搜索关键词排行榜
  • 安徽省建设工程资料上传网站关键词seo是什么意思
  • 特效网站模板什么是搜索引擎销售
  • 威廉网站建设做网页的网站
  • 企业网站建设报价口碑营销名词解释
  • 企业网站排名怎么优化网络销售新手入门
  • 做网站知名公司如何开发微信小程序
  • 网站开发视频资源放哪儿深圳sem优化
  • 企业网站建设排名客服中国搜索引擎排名
  • 做网站常用字体seo网站推广下载
  • 铜山区建设局局网站网推是什么意思
  • 网站设计论文框架推广代理公司
  • 企业做网站需要多少钱网络销售就是忽悠人
  • 设计师工作室seo服务商技术好的公司