• 3、URL和URI(中)


    分解URL

    URL由以下5部分组成:

    1、模式(协议)

    2、授权机构

    3、路径

    4、片段标识符(段/ref)

    5、查询字符串

    http://www.mrchengs.com/java/shop/index.html?age=12

    协议:http

    授权机构:www.mechengs.com

    路径:/java/shop/index.html

    查询字符串:age=12

    授权机构:用户信息、主机、端口

    http://admin@www.mrchengs.com:8080/

    9个公共方法提供了URL这些部分的只读访问:

    1、getFile()  2、getHost()  3、getPort()

    4、getProtocol()   5、getRef()   6、getQuery()

    7、getPath()  8、getUserInfo()  9、getAuthority()

    相等性比较

    URL类通常的equals()和haashCode()方法

    与之前使用方式一致

     比较

    URL有3个方法可以将一个实例转换为另一种形式

    1、toString():绝对的URL

    2、toExternalForm():将一个URL对象转换为一个字符串,返回一个可读的String

    3、toURI():将URL对象转为对应的URI对象

     URI类

     URI是对URL的抽象

    不仅包括统一的资源定位符

    还包括统一的资源名

    使用URI的次数大于使用URL

    大多数的会犯和标准都是URI定义的

    与URL类的区别:

     构造一个URL

     

    URI类不依赖底层协议处理器

    只要语法上正确,Java就不需要为了创建URI对象而理解其协议

    第一个构造函数根据满足任何条件的字符串创建一个新的URI对象:

     

     第二个构造函数需要一个模式特定的部分,主要是非层次的URI

    模式是URI的协议,必须有ASCII字母、数字及三个标点符号(+ - 。)组成

    这个参数传为null,则省略模式

     

     第三个构造函数用于层次URI,如http和ftp URL

    主机和路径(使用  /  分割) 共同构成这个URL的模式特定部分

    第四个构造函数与前一个基本相同,只是添加了一个查询字符串部分

     第五个构造函数是前面两个构造函数调用主层次URI构造函数

    这个方法将授权机构分解为用户信息、主机和端口

    第六个方法,在确定URI有效的情况下

     URI的各部分

    URI引用最多三个部分:模式、模式特定部分、片段标识符

    模式:模式特定部分“片段

    如果省略了模式,这个URL是相对的

    如果省略了片段标识符,这个URI就是一个纯URI

    getRawFoo()方法返回URI各个部分的编码形式

    相应的getFoo()方法首先对所有用白粉还转移的字符进行解码,然后回解码后的部分:

    isAbsolute()方法

     

     isOpaque()方法

     

     

    解析相对URI

     提供三个方法而将在相对和绝对之间来回转换

    1、resolve()方法将uri参数与这个URI进行比较,并且构造一个新的URI对象

    这个对象包装了一个绝对URI

     

     2、resolve(String uri)

    调用URI本身不包括绝对的URI

    3、relativize()方法很对相对于调用的URI的uri参数创建一个新的URI对象

     字符串表示

     

     URLRncoder

     

    URLDecoder

     

      

  • 相关阅读:
    vue项目按钮权限配置
    页面框架搭建模板可复用
    vue循环渲染复选框列表
    Vue项目网页版在浏览器中实现扫码识别功能(项目应用篇)
    基于51单片机的智能小车
    卡特兰数:翻折思想 翻折前后一一对应
    Redis之Info指令
    Redis的安全使用
    Redis中的近似LRU超出内存限制后的处理
    Redis主从同步
  • 原文地址:https://www.cnblogs.com/Mrchengs/p/10914470.html
Copyright © 2020-2023  润新知