url 订阅
统一资源定位系统(uniform resource locator;URL)是因特网的万维网服务程序上用于指定信息位置的表示方法。它最初是由蒂姆·伯纳斯·李发明用来作为万维网的地址。现在它已经被万维网联盟编制为互联网标准RFC1738。 展开全文
统一资源定位系统(uniform resource locator;URL)是因特网的万维网服务程序上用于指定信息位置的表示方法。它最初是由蒂姆·伯纳斯·李发明用来作为万维网的地址。现在它已经被万维网联盟编制为互联网标准RFC1738。
信息
外文名
uniform resource locator;URL
中文名
统一资源定位系统
统一资源定位系统基本介绍
因特网上的可用资源可以用简单字符串来表示,该文档就是描述了这种字符串的语法和语义。而这些字符串则被称为:“统一资源定位器”(URL)。这篇说明源于万维网全球信息主动组织(World Wide Web global informationinitiative)介绍的概念。RFC1630《通用资源标志符》描述了一些对象数据,他们自1990年起就开始使用这些对象数据。这篇URL说明符合《因特网资源定位符的功能需求(Functional Requirements for Internet Resource Locators)》中说明的需求。这篇文档是由工程任务组织(IETF)的URI工作小组写的 [1]  。
收起全文
精华内容
参与话题
问答
  • URL和URI(一)URL

    千次阅读 2018-09-27 15:47:24
    URL类 public URL(String url) throws MalformedURLException public URL(String protocol, String host, int port, String file) throws MalformedURLException public URL(String protocol, String host, ...

    URL类

    public URL(String url) throws MalformedURLException
    public URL(String protocol, String host, int port, String file) throws MalformedURLException
    public URL(String protocol, String host, String file) throws MalformedURLException
    public URL(URL base,String relative) throws MalformedURLException
    

    使用哪个构造函数取决于你有哪些信息以及信息的形式;

    从字符串构造URL

    最简单的URL构造函数只接受一个字符串形式的绝对URL作为唯一的参数:

    public URL(String url) throws MalformedURLException在这里插入代码片
    

    例如:

    try {
    			URL url = new URL("http://www.baidu.com");
    		} catch (MalformedURLException e) {
    			System.out.println(e);
    		}
    

    由组成部分构造URL

    还可以通过指定协议、主机名和文件来构建一个URL:

    public URL(String protocol, String host, String file) throws MalformedURLException
    

    这个构造函数将端口设置为-1,所以会使用该协议的默认端口。file参数应当以斜线开头,包括路径、文件名和可选的片段标识符。有可能会忘记最前面的斜线,这是一个很常见的错误。与所有URL构造函数一样,它可能会抛出MalformedURLException异常。

        try {
    			URL url = new URL("http","www.eff.org","/blueribbon.html#intro");
    		} catch (MalformedURLException e) {
    			System.out.println(e);
    		}
    

    这会创建一个URL对象,指向http://www.eff.org/blueribbon.html#intro,并使用HTTP默认的端口(80)。
    在很少见的情况下,默认端口不正确时,还允许使用一个int显式指定端口:

       try {
    			URL url = new URL("http","www.eff.org","8000",/blueribbon.html#intro");
    		} catch (MalformedURLException e) {
    			System.out.println(e);
    		}
    

    构造相对URL

    这个构造函数根据相对URL和基础URL构建一个绝对URL:

    public URL(URL base,String relative) throws MalformedURLException
    

    在这里插入图片描述

       try {
    			URL url1 = new URL("http://www.ibiblio.org/javafaq.index.html");
    			URL url2 = new URL(url1, "mailinglists.html");
    		} catch (MalformedURLException e) {
    			System.out.println(e);
    		}
    

    从URL获取数据

    URL类有几个方法可以从URL获取数据:

    public final InputStream openStream() throws java.io.IOException
    public URLConnection openConnection() throws java.io.IOException
    public URLConnection openConnection(Proxy proxy) throws java.io.IOException
    public final Object getContent() throws java.io.IOException
    public final Object getContent(Class[] classes)throws java.io.IOException
    

    在这里插入图片描述

    public final InputStream openStream() throws java.io.IOException

    在这里插入图片描述

       try {
    			URL url1 = new URL("http://www.baidu.com");
    			InputStream stream = url1.openStream();
    			int c;
    			while((c = stream.read())!= -1)
    			{
    				System.out.write(c);
    			}
    		} catch (IOException e) {
    			System.out.println(e);
    		}
    

    控制台会输出源代码:
    在这里插入图片描述

    public URLConnection openConnection() throws java.io.IOException

    openConnection()方法为指定的URL打开一个socket,并返回一个URLConnection对象。URLConnection表示一个网络资源的打开的连接。如果调用失败,则openConnection()会抛出一个IOException异常;

      try {
    			URL url1 = new URL("http://www.baidu.com");
    			URLConnection uc = url1.openConnection();
    			InputStream stream = uc.getInputStream();
    			//从连接读取			
    		} catch (IOException e) {
    			System.out.println(e);
    		}
    

    在这里插入图片描述
    这个方法还有一个重载版本,可以指定通过哪个代理服务器传递连接:

    public URLConnection openConnection(Proxy proxy) throws java.io.IOException
    

    public final Object getContent() throws java.io.IOException

    在这里插入图片描述

    URL url1 = new URL("http://www.baidu.com");
    Object object = url1.getContent();
    //将Object强制转换为适当的类型
    //处理这个Object
    

    在这里插入图片描述
    下载一个对象:

    URL url1 = new URL("http://www.baidu.com");
    Object object = url1.getContent();
    System.out.println(object.getClass().getName());
    

    在这里插入图片描述
    具体的类可能因为Java的版本不同而有所区别:
    在这里插入图片描述

    public final Object getContent(Class[] classes)throws java.io.IOException

    getContent()方法的这个重载版本允许你选择希望将内容作为哪个类返回。这个方法尝试以第一种可用的格式返回URL的内容:

                URL url1 = new URL("http://www.baidu.com");
    			Class<?>[] types = new Class[3];
    			types[0] = String.class;
    			types[1] = Reader.class;
    			types[2] = InputStream.class;
    			Object object = url1.getContent(types);
    

    如果内容处理器知道如何返回资源的一个字符串表示,它就会返回一个String。如果它不知道如何返回资源的字符串表示,则返回Reader。倘若它也不知道如何将资源表示为一个读取器,那么它将返回InputStream。必须用instanceof检查返回的对象的类型:

    在这里插入图片描述

    分解URL

    URL由以下5部分组成:

    • 模式,也称为协议
    • 授权机构
    • 路径
    • 片段标识符
    • 查询字符串

    在这里插入图片描述
    public String getProtocol()
    getProtocol()方法返回一个String,其中包含URL的模式(如"http"、“https"或"file”):

    URL url1 = new URL("http://www.baidu.com");
    System.out.println(url1.getProtocol());    //输出http
    

    public String getHost()
    getHost()方法返回一个String,其中包含URL的主机名:

    URL url1 = new URL("http://www.baidu.com");
    System.out.println(url1.getHost());   //输出www.baidu.com
    

    public int getPort()
    在这里插入图片描述

    URL url1 = new URL("http://www.baidu.com");
    System.out.println(url1.getPort());   //输出-1
    

    public int getDefaultPort()
    在这里插入图片描述

    URL url1 = new URL("http://www.baidu.com");
    System.out.println(url1.getDefaultPort());   //输出80
    

    public String getFile()
    getFile()方法返回一个String。从主机名后的第一个斜线(/)一直到片段标识符#之前的字符,被认为是文件部分:

    URL url1 = new URL("http://www.baidu.com/test.html?name=yd&sex=man#");
    System.out.println(url1.getFile());   //输出/test.html?name=yd&sex=man
    

    public String getPath()
    与 getFile()相似,但它返回的String中不包含查询字符串:

    URL url1 = new URL("http://www.baidu.com/test.html?name=yd&sex=man#");
    System.out.println(url1.getPath());    //输出/test.html
    

    public String getRef()
    返回URL的片段标识符部分。如果URL没有片段标识符,则这个方法返回null:

    URL url1 = new URL("http://www.baidu.com/test.html?name=yd&sex=man#34546");
    System.out.println(url1.getRef());   //输出34546
    

    public String getQuery()
    返回URL的查询字符串。如果URL没有查询字符串,则这个方法返回null:

    URL url1 = new URL("http://www.baidu.com/test.html?name=yd&sex=man#34546");
    System.out.println(url1.getQuery());   //输出name=yd&sex=man
    

    public String getUserInfo()
    返回URL的用户信息。如果URL没有用户信息,则这个方法返回null:

    URL url1 = new URL("http://admin@www.baidu.com/test.html?name=yd&sex=man#34546");
    System.out.println(url1.getUserInfo());   //输出admin
    

    public String getAuthority()
    getAuthority()方法会以URL中的形式返回授权机构,可能有用户信息和端口,也可能没有:

    URL url1 = new URL("http://admin@www.baidu.com/test.html?name=yd&sex=man#34546");
    System.out.println(url1.getAuthority());   //输出admin@www.baidu.com
    

    相等性和比较

    在这里插入图片描述
    在这里插入图片描述
    URL类还有一个sameFile()方法,可以检查两个URL是否指向相同的资源:

    public boolean sameFile(URL other)
    

    在这里插入图片描述

    比较

    URL有三个方法可以将一个实例转换为另外一种形式,分别是toString()、toExternalForm()和toURI()。
    在这里插入图片描述
    最好toURI()方法将URL对象转换为对应的URI对象:

     public URI toURI() throws URISyntaxException
    

    以上只是学习所做的笔记!!!
    书籍:Java网络编程

    展开全文
  • URI和URL的区别比较与理解

    万次阅读 多人点赞 2018-06-04 10:12:03
    一、URI <1>什么是URI URI,通一资源标志符(Uniform Resource Identifier, URI),表示的是web上每一种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个URI进行定位的。 <......

    一、URI

    <1>什么是URI

    URI,统一资源标志符(Uniform Resource Identifier, URI),表示的是web上每一种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个URI进行标识的。

    <2>URI的结构组成

    URI通常由三部分组成:

    ①资源的命名机制;

    ②存放资源的主机名;

    ③资源自身的名称。

    (注意:这只是一般URI资源的命名方式,只要是可以唯一标识资源的都被称为URI,上面三条合在一起是URI的充分不必要条件)

    <3>URI举例

    如:https://blog.csdn.net/qq_32595453/article/details/79516787

    我们可以这样解释它:

    ①这是一个可以通过https协议访问的资源,

    ②位于主机 blog.csdn.net上,

    ③通过“/qq_32595453/article/details/79516787”可以对该资源进行唯一标识(注意,这个不一定是完整的路径)

    注意:以上三点只不过是对实例的解释,以上三点并不是URI的必要条件,URI只是一种概念,怎样实现无所谓,只要它唯一标识一个资源就可以了。

    二、URL

    URL是URI的一个子集。它是Uniform Resource Locator的缩写,译为“统一资源定位 符”。

    通俗地说,URL是Internet上描述信息资源的字符串,主要用在各种WWW客户程序和服务器程序上。

    采用URL可以用一种统一的格式来描述各种信息资源,包括文件、服务器的地址和目录等。URL是URI概念的一种实现方式。

    URL的一般格式为(带方括号[]的为可选项):

    protocol :// hostname[:port] / path / [;parameters][?query]#fragment

    URL的格式由三部分组成: 

    ①第一部分是协议(或称为服务方式)。

    ②第二部分是存有该资源的主机IP地址(有时也包括端口号)。

    ③第三部分是主机资源的具体地址,如目录和文件名等。

    第一部分和第二部分用“://”符号隔开,

    第二部分和第三部分用“/”符号隔开。

    第一部分和第二部分是不可缺少的,第三部分有时可以省略。 

    三、URI和URL之间的区别

    从上面的例子来看,你可能觉得URI和URL可能是相同的概念,其实并不是,URI和URL都定义了资源是什么,但URL还定义了该如何访问资源。URL是一种具体的URI,它是URI的一个子集,它不仅唯一标识资源,而且还提供了定位该资源的信息。URI 是一种语义上的抽象概念,可以是绝对的,也可以是相对的,而URL则必须提供足够的信息来定位,是绝对的。

     

    --------------------------------------------

    更新:看了一下大家的疑问,其实大家对uri可以认为只是唯一识别的编号,类似于大家的身份证号,而url就是身份证住址+姓名,这样是不是就很明显了~~

    更新2:针对大部分同学的疑问,其实纠结的就是URI到底是什么,怎么它就是URI不是URL了,其实文章中都已交代,只要能唯一标识资源的就是URI,在URI的基础上给出其资源的访问方式的就是URL,这是最简单的总结了,希望对大家有所帮助,祝好~~

    展开全文
  • Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. 翻译就是:无法配置DataSource:未指定'url'属性,也无法配置嵌入数据源。 很明显,...

    Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

    翻译就是:无法配置DataSource:未指定'url'属性,也无法配置嵌入数据源。

     

    很明显,就是你在应用中没有配置datasource的一些相关属性,例如:地址值啊,数据库驱动啊,用户名啊,密码啊,

     

     

    都知道,SpringBoot的最大一个好处就是自动配置:所以我们只是需要给他配置文件的值,它就会自动配置。配置在application.properties文件中

    那么我将把SpringBoot的一些最基本的配置信息给大家站出来:

    #访问根路径
    
    #应用名称
    spring.application.name=springboot-demo
    
    #访问端口号
    server.port=8080
    
    #编码格式
    server.tomcat.uri-encoding=utf-8
    
    #数据库相关配置
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    spring.datasource.url=jdbc:mysql://localhost:3306/sql_test
    spring.datasource.username=root
    spring.datasource.password=123456
    spring.datasource.max-idle=10
    spring.datasource.max-wait=10000
    spring.datasource.min-idle=5
    spring.datasource.initial-size=5
    
    #session生命周期
    server.servlet.session.timeout=30m
    
    
    
    
    
    

     

    当然,也可以不配置,但是你需要声明一下

    启动类头部声明就可以了:

    @SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})

     

    展开全文
  • java通过url读取网络图片

    万次阅读 2019-04-08 18:06:22
    使用java.net读取网络文件 import java.io.BufferedInputStream; import java.io.FileOutputStream;... import java.io.IOException;... import java.net.HttpURLConnection;... import java.net.URL; publi...

    使用java.net读取网络文件

     

    复制代码

    import java.io.BufferedInputStream;  
     import java.io.FileOutputStream;  
     import java.io.IOException;  
     import java.net.HttpURLConnection;  
     import java.net.URL;  
      
     public class downimage {  
      
     public void saveToFile(String destUrl) {  
     FileOutputStream fos = null;  
     BufferedInputStream bis = null;  
     HttpURLConnection httpUrl = null;  
     URL url = null;  
     int BUFFER_SIZE = 1024;  
     byte[] buf = new byte[BUFFER_SIZE];  
     int size = 0;  
     try {  
     url = new URL(destUrl);  
     httpUrl = (HttpURLConnection) url.openConnection();  
     httpUrl.connect();  
     bis = new BufferedInputStream(httpUrl.getInputStream());  
     fos = new FileOutputStream("c:\\haha.gif");  
     while ((size = bis.read(buf)) != -1) {  
     fos.write(buf, 0, size);  
     }  
     fos.flush();  
     } catch (IOException e) {  
     } catch (ClassCastException e) {  
     } finally {  
     try {  
     fos.close();  
     bis.close();  
     httpUrl.disconnect();  
     } catch (IOException e) {  
     } catch (NullPointerException e) {  
     }  
     }  
     }  
     public static void main(String[] args) {  
     // TODO Auto-generated method stub  
      
     downimage dw=new downimage();  
     dw.saveToFile("http://10.81.36.193:8081/png.png");  
     }  
     }  

    复制代码

     

    注意:

      如果路径或者源文件名称中包含特殊符号或者空格,会报505错误,此时需要对URL进行转码

      

      ftpUrl=ftpUrl.replaceAll("%", "%25");//先将地址本身带有的%转为%25
      ftpUrl=ftpUrl.replaceAll(" ", "%20");//再将空格转换为%20
    
    转码之后读取正常。
    展开全文
  • JDBC连接ORACLE的三种URL格式

    万次阅读 多人点赞 2016-09-05 19:17:51
    使用jdbc连接oracle时url有三种格式格式一: Oracle JDBC Thin using an SID: jdbc:oracle:thin:@host:port:SID Example: jdbc:oracle:thin:@localhost:1521:orcl 这种格式是最简单也是用得最多的 你的oracle的...
  • Html获取Url参数

    万次阅读 多人点赞 2018-03-16 10:35:27
    做web前端的开发很多的时候都会遇到的一个很简答的问题,就是两个页面之间的跳转,一般来说是: &lt;a href = "...&gt;测试&...这样的没有参数的一般是最简单的,可以跳转是因为&...
  • 在爬取boss直聘时出现这种错误,于是搜索了网上很多文章,总结如下: ... import requests requests.adapters.DEFAULT_RETRIES = 5 # 增加重连次数 s = requests.session() ...s.get(url) # 你需要的网址 2....
  • 今天使用spring boot配置两个数据源,出现了...app.datasource.url=jdbc:mysql://localhost/test app.datasource.username=dbuser app.datasource.password=dbpass app.datasource.driverClassName=com.mysql.cj.jdb...
  • 以下面的代码为例 import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping;...
  • URL编码

    千次阅读 2015-03-27 20:42:48
    URL编码 我们知道URL指的的是网址,所谓的URL编码指的是对网址上的不安全的字符,例如中文,进行编码,编码后的中文方便在网络上传输。 例如,我们提交一个表单,表单内容如下所示:   用户名:李四"/>  提交"/>...
  • URL格式

    万次阅读 2017-11-18 12:25:44
    参考了百度百科,说一下URL同志的格式问题:URL的定义:在WWW上,每一信息...URL的组成部分URL由三部分组成:资源类型,存放资源的主机域名,资源文件名。URL的一般语法格式:(带方括号[]的为可选项):protocol :// ho
  • 在用JAVA做一个非法URL屏蔽系统。想在JAVA程序中实现类似JSP页面中response.sendredirect("");功能。即假设浏览器打开网页http://bbs.tianya.cn/,自动将该网页跳转为http://www.baidu.com/ 该怎么实现? 或者,...
  • JS获取 URL相关信息,参数

    万次阅读 2018-10-08 09:41:39
    Location 对象包含有关当前 URL 的信息。 Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。 hash 设置或返回从井号 (#) 开始的 URL(锚) host 设置或返回主机名和当前 URL 的...
  • 给定ab两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 这是网上的思路:可以估计每个文件安的大小为5G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存...
  • 搞不清楚url是怎么访问的,不明白这个url地址该怎么写。 谁有现成的例子让我借鉴一下吗。 ``` $(function(){ $("#send").click(function(){ $.get("load_Ajax.html",{ name:$("#name").val(), ...
  • URL 代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,也就是我们常说的域名、浏览器访问地址。 在Java中就是使用URL访问网络资源,获取...
  • Nginx之八 URL重写(rewrite)配置

    万次阅读 2018-10-23 22:17:54
    Nginx URL重写(rewrite)配置及信息详解 1)if判断指令 语法为if(condition){...},对给定的条件condition进行判断。 如果为真,大括号内的rewrite指令将被执行,if条件(conditon)可以是如下任何内容: a: 当...
  • 一、网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字。 把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。 网络蜘蛛是通过网页的链接地址来寻找网页的。 从网站某一个页面(通常是首页)...
  • UrlRewrite重写url

    万次阅读 2016-01-20 15:58:47
    简介UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址。优点(1)提高安全性 可以有效的避免一些参数名、ID等完全暴露在用户面前,如果用户随便乱输的话,不符合规则的话直接会返回个404...
  • URL原理、URL编码、URL特殊字符

    万次阅读 2017-03-31 14:54:45
    From: http://blog.csdn.net/chenlycly/article/details/51820727 From: http://blog.csdn.net/zmx729618/article/details/51381655 From: ...   HTML URL 编码参考手册:htt...
  • java URL 获取本地URL

    万次阅读 2019-09-20 15:59:40
    java URL 获取本地URL new URL("file:\\d:\\hehe.html")
  • 发现运行cmd,ping域名的时候提示找不到主机名,但是ping IP地址是没问题的,于是猜想解决了这个问题,也许就解决了svn不能解析url地址的问题。 通过网上搜索资料发现,这可能是dns缓存的问题,通过: 1、在...
  • 通过分析、尝试,构造URL,绕过登陆机制,下载资源 主体过程: 目标网址是三好网的资料库,这是免费的,但是需要登陆 重点: 列表数据是动态生成的,非静态页面 下载需要登陆(登录后免费下载) 过程 初始...
  • CondaHTTPError: HTTP 000 CONNECTION FAILED for url

    万次阅读 多人点赞 2017-11-14 13:59:53
    参考链接:conda httperror http none none for url none Anaconda更新失败$ conda create -n tensorflow python=3.5Fetching package metadata ....... CondaHTTPError: HTTP 000 CONNECTION FAILED
  • 动态URL、静态URl、伪静态URL

    万次阅读 2018-06-04 20:12:21
    我们说url的动态、静态、伪静态三种形式,其实从严格分类上来说,伪静态也是动态的一种,只是表现形式为静态。 参考:https://bk.likinming.com/post-2674.html 动态URl 动态页面的特征 1、以ASP、PHP、JSP、...
  • Flask带参URL传值的方法

    万次阅读 多人点赞 2018-04-19 17:53:31
    在Flask中编写链接URL比较容易,这里并不针对这些讨论,但URL中如果包含可变部分路由以及携带一些参数应该怎么做呢? 我们可以使用Flask模板提供的辅助函数url_for(),这里通过一个完整的小例子来介绍带参URL传值的...
  • 什么是URL

    千次阅读 多人点赞 2019-04-27 03:28:00
    URL(Uniform Resource Locator)的意思是统一资源定位符,是用于完整地描述Internet上网页和其他资源的地址的一种标识方法,也被称为"网址"。 tip:在Internet上所有资源都有一个独一无二的URL地址,我们可以通过在字...

空空如也

1 2 3 4 5 ... 20
收藏数 697,401
精华内容 278,960
关键字:

url