URL

URL提供了一个相当容易理解的形式来惟一确定或对Internet上的信息进行编址。浏览器用URL来识别Web上的信息。在Java有网络类库中,java.net.URL类为使用URL在Internet上获取信息提供了一个简单的、简洁的用户编程接口。

标准的URL以四个元素为基础:

第一个是协议名,用冒号(:)来将它与定位符其他部分相隔离。尽管现在所有的事情都通过HTTP协议完成,但它不是惟一的协议,常见的其他协议还有ftp、gother、mailto等。

第二个元素是主机名或所用主机的IP地址,这由左边的双斜线(//)和右边的单斜线(/)或可选冒号(:)限制。

第三个成分,端口号,是可选的参数,由主机名左边的冒号(:)和右边的斜线(/)限制(默认端口为80,是预定义的HTTP端口,所以“:80”是多余的)。

第四个部分是实际的文件路径。因此标准的URL格式定义如下:

<scheme> :// <user> : <password> @ <host> : <port> / <url-path>

为了表示URL,在Java语言的网络类库java.net中提供了一个URL类,该类为在Internet上获取信息提供了一个简单的、简洁的用户编程接口。URL类有多个构造方法,通过构造方法来初始化一个URL对象。

public URL(String urlSpecifier);

public URL(URL baseURL, String relativeURL);

public URL(String protocolName, String hostName, int port, String path);

public URl(String protocolName, String hostName, String path); // 使用缺省80端口

第一个构造方法是通过一个表示URL地址的字符串来构造一个URL对象,例如:

URL url1= new URL("http://len.iteye.com");

第二个构造方法是通过一个URL对象和一个文件名来构造一个URL对象,例如:

URL url1 = new URL(http://len.iteye.com);

URL url2 = new URL(url1, "index.html");

另外的两个构造方法则是通过分别指定传输协议、主机名、端口号、和文件名来构造一个URL对象,例如:

URL url3 = new URL("http", "www.len.com", 80 ,"index.html");

URL url4 = new URL("http", "www.len.com", "index.html");

除了上面的构造方法外,URL还提供了一些成员方法用于获取URL对象的属性:

public String getProtocol(); // 获取URL的协议名

public String getHost(); // 获取URL的主机名

public int getPort(); // 获取URL的端口号,如果没高端口,则返回-1

public String getFile(); // 获取URL的文件名
import java.net.MalformedURLException;
import java.net.URL;

public class URLTest{
public static void main(String[] args) throws MalformedURLException{
URL hp = new URL("http://len.iteye.com");
System.out.println("Protocol: " + hp.getProtocol());
System.out.println("Port: " + hp.getPort());
System.out.println("Host: " + hp.getHost());
System.out.println("File: " + hp.getFile());
System.out.println("Ext: " + hp.toExternalForm());
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值