URL组成
URL格式: protocol://[authority]hostname:port/resource?queryString
说明:每种协议对应一种特定handler进行解析处理,JDK内置了HTTP 、 File 、 FTP和Jar等协议的。
Handler
作用:每个Handler解析一种特定的协议,获取资源;
命名规范: Handler类的命名模式为 [包路径].[协议].Handler,JDK内置Handler的包路径为“sun.net.www.protocol”,如下图所示:
创建过程:
- 首先,如果创建URL时指定了Handler,则使用该Handler;
- 其次,如果设定了URLStreamHandlerFactory,则根据Protocol从其获取对应Handler实例;
- 最后,根据系统参数java.protocol.handler.pkgs指定的类创建Handler实例;
if (