码迷,mamicode.com
首页 > 编程语言 > 详细

java的URI和URL到底是什么

时间:2018-08-05 19:34:32      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:throws   rgs   art   一个   path   图片   color   getpath   创建   

在我们做开发时,经常有URI和URL弄混的问题,如果当时直接看URI和URL的源码就不可能弄混。首先我总结一下URI和URL的关系:他们的关系是:URL是一种特殊的URI,是URI包括URL,

 

下面用公式的形式说明URI到底是什么?

 

URI=[scheme:]<scheme-specific-part>[#fragment]   这正好可以用URI类中的getScheme   getSchemeSpecificPart 以及getFragment得到.

在scheme为null时,这个URI被称为相对的URI。 在scheme不为空时URI称为绝对的URI

 

而<scheme-specfic-part>=[//authority]<path>[:query]

在path为空时称为不透明的URI,在不为空时称为透明的URI

 

authority 又可以分为:[userinfo@]<host>[:port]

 

从这个公式我们可以看到URI确实包括URL。

下面写一个示例代码

package com.timo;

import java.net.URI;

public class URITest {
    public static void main(String[] args) throws Exception{
        //创建一个uri,根据[scheme:]<scheme-specific-part>[#fragment]
        URI uri = new URI("http", "//qinlin@localhost:8080/oi/oi?user=‘aieg‘", "iewio");
        System.out.println(uri);
        System.out.println(uri.getPath());
    }
}

调试代码的图片如下,从下图可以看到上述公式的各个值是什么。

技术分享图片

java的URI和URL到底是什么

标签:throws   rgs   art   一个   path   图片   color   getpath   创建   

原文地址:https://www.cnblogs.com/1540340840qls/p/9426764.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!