java urldns,Java’s URL.equals() Performs DNS Resolution

ClassURL

represents a Uniform Resource

Locator, a pointer to a “resource” on the World

Wide Web. A resource can be something as simple as a file or a

directory, or it can be a reference to a more complicated object,

such as a query to a database or to a search engine. More

information on the types of URLs and their formats can be found at:

Types of URL

In general, a URL can be broken into several parts. Consider the

following example:

http://www.example.com/docs/resource1.html

The URL above indicates that the protocol to use ishttp

(HyperText Transfer Protocol) and that the

information resides on a host machine namedwww.example.com

. The information on that host

machine is named/docs/resource1.html

. The exact

meaning of this name on the host machine is both protocol

dependent and host dependent. The information normally resides in

a file, but it could be generated on the fly. This component of

the URL is called thepath

component.

A URL can optionally specify a “port”, which is the

port number to which the TCP connection is made on the remote host

machine. If the port is not specified, the default port for

the protocol is used instead. For example, the default port forhttp

is80

. An alternative port could be

specified as:

http://www.example.com:1080/docs/resource1.html

The syntax ofURL

is defined by

RFC 2396: Uniform

Resource Identifiers (URI): Generic Syntax

, amended by

RFC 2732: Format for

Literal IPv6 Addresses in URLs

. The Literal IPv6 address format

also supports scope_ids. The syntax and usage of scope_ids is describedhere.

A URL may have appended to it a “fragment”, also known

as a “ref” or a “reference”. The fragment is indicated by the sharp

sign character “#” followed by more characters. For example,

http://java.sun.com/index.html#chapter1

This fragment is not technically part of the URL. Rather, it

indicates that after the specified resource is retrieved, the

application is specifically interested in that part of the

document that has the tagchapter1

attached to it. The

meaning of a tag is resource specific.

An application can also specify a “relative URL”,

which contains only enough information to reach the resource

relative to another URL. Relative URLs are frequently used within

HTML pages. For example, if the contents of the URL:

http://java.sun.com/index.html

contained within it the relative URL:

FAQ.html

it would be a shorthand for:

http://java.sun.com/FAQ.html

The relative URL need not specify all the components of a URL. If

the protocol, host name, or port number is missing, the value is

inherited from the fully specified URL. The file component must be

specified. The optional fragment is not inherited.

The URL class does not itself encode or decode any URL components

according to the escaping mechanism defined in RFC2396. It is the

responsibility of the caller to encode any fields, which need to be

escaped prior to calling URL, and also to decode any escaped fields,

that are returned from URL. Furthermore, because URL has no knowledge

of URL escaping, it does not recognise equivalence between the encoded

or decoded form of the same URL. For example, the two URLs:

http://foo.com/hello world/ and http://foo.com/hello%20world

would be considered not equal to each other.

Note, the

URI

class does perform escaping of its

component fields in certain circumstances. The recommended way

to manage the encoding and decoding of URLs is to use

URI

,

and to convert between these two classes usingand

URI.toURL()

.

The

URLEncoder

and

URLDecoder

classes can also be

used, but only for HTML form encoding, which is not the same

as the encoding scheme defined in RFC2396.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值