Логин:   Пароль:






Новости
Рассылки
Форум
Поиск


Java
- Апплеты
- Вопрос-ответ
- Классы
- Примеры
- Руководства
- Статьи
- IDE
- Словарь терминов
- Скачать

Мобильная Java
- Игры
- Примеры
- Статьи
- WAP, WML и пр.

JavaScript
- Вопрос-ответ
- Примеры
- Статьи

Веб-мастеринг
- HTML
- CSS
- SSI

Разминка для ума
Проекты
Книги
Ссылки
Программы
Юмор :)




Rambler's Top100
Rambler's Top100

Java: КлассыКласс URL

Класс URL

Для работы с ресурсами, заданными своими адресами URL, в библиотеке классов Java имеется очень удобный и мощный класс с названием URL. Простота создания сетевых приложений с использованием этого класса в значительной степени опровергает общераспространенное убеждение в сложности сетевого программирования. Инкапсулируя в себе достаточно сложные процедуры, класс URL предоставляет в распоряжение программиста небольшой набор простых в использовании конструкторов и методов.

Конструкторы

URL(String spec)

Создает объект URL для сетевого ресурса, адрес URL передается конструктору в виде текстовой строки через единственный параметр spec. В процессе создания объекта проверяется заданный адрес URL, а также наличие указанного в нем ресурса. Если адрес указан неверно или заданный в нем ресурс отсутствует, возникает исключение MalformedURLException. Это же исключение возникает при попытке использовать протокол, с которым данная система не может работать.

URL(String protocol, String host, int port, String file)

Допускает раздельное указание протокола, адреса узла, номера порта, а также имя файла.

URL(String protocol,String host, String file)

Предполагает использование номера порта, принятого по умолчанию. Для протокола HTTP это порт с номером 80.

URL(URL context, String spec)

Допускает указание контекста адреса URL и строки адреса URL. Строка контекста позволяет указывать компоненты адреса URL, отсустсвующие в строке spec, такие как протокол, имя узла, файла или номер порта.


Методы

InputStream

openStream()

Позволяет создать входной поток для чтения файла ресурса, связанного с созданным объектом класса URL.

Для выполнения операции чтения из созданного таким образом потока вы можете использовать метод read, определенный в классе InputStream (любую из его разновидностей).

Данную пару методов (openStream из класса URL и read из класса InputStream) можно применить для решения задачи получения содержимого двоичного или текстового файла, хранящегося в одном из каталогов сервера Web. Сделав это, обычное приложение Java или аплет может выполнить локальную обработку полученного файла на компьютере удаленного пользователя.

Object

getContent()

Определяет и получает содержимое сетевого ресурса, для которого создан объект URL

Практически вы можете использовать метод getContent для получения текстовых файлов, расположенных в сетевых каталогах.

К сожалению, данный метод непригоден для получения документов HTML, так как для данного ресурса не определен обработчик соедржимого, предназначенный для создания объекта. Метод getContent не способен создать объект ни из чего другого, кроме текстового файла.

Данная проблема, тем не менее, решается очень просто - достаточно вместо метода getContent использовать описанную выше комбинацию методов openStream из класса URL и read из класса InputStream.

String

getHost()

С помощью метода getHost можно определить имя узла, соответствующего данному объекту URL.

String

getFile()

Позволяет получить информацию о файле, связанном с данным объектом URL.

int

getPort()

Предназначен для определения номера порта, на котором выполняется связь для объекта.

URL.
String

getProtocol()

С помощью метода getProtocol можно определить протокол, с использованием которого установлено соединение с ресурсом, заданным объектом URL.

String

getRef()

Возвращает текстовую строку ссылки на ресурс, соответствующий данному объекту URL.

int

hashCode()

Возвращает хэш-код объекта URL.

boolean

sameFile(URL other)

С помощью метода sameFile можно определить, ссылаются ли два объекта класса URL на один и тот же ресурс, или нет.

Если объекты ссылаются на один и тот же ресурс, метод sameFile возвращает значение true, если нет - false.

boolean

equals(Object obj)

Метод используется для определения идентичности адресов URL, заданных двумя объектами класса URL.

Если адреса URL идентичны, метод equals возвращает значение true, если нет - значение false.

String

toExternalForm()

Возвращает текстовую строку внешнего представления адреса URL, определенного данным объектом класса URL.

String

toString()

Возвращает текстовую строку, представляющую данный объект класса URL.

URLConnection

openConnection()

Предназначен для создания канала между приложением и сетевым ресурсом, представленным объектом класса URL.

Если вы создаете приложение, которое позволяет читать из каталогов сервера Web текстовые или двоичные файлы, можно создать поток методом openStream или получить содержимое текстового ресурса методом getContent.

Однако есть и другая возможность. Вначале вы можете создать канал, как объект класса URLConnection, вызвав метод openConnection, а затем создать для этого канала входной поток, воспользовавшись методом getInputStream, определенным в классе URLConnection. Такая методика позволяет определить или установить перед созданием потока некоторые характеристики канала, например, задать кэширование.


Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/books/show2b.php on line 11

Warning: mysql_db_query() [function.mysql-db-query]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/books/show2b.php on line 19

Warning: mysql_db_query() [function.mysql-db-query]: A link to the server could not be established in /pub/home/javaport/javaportal/books/show2b.php on line 19

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /pub/home/javaport/javaportal/books/show2b.php on line 30
Узнай о чем ты на самом деле сейчас думаешь тут.


[an error occurred while processing this directive]



Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/news/worldnews.php on line 91

Warning: mysql_db_query() [function.mysql-db-query]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /pub/home/javaport/javaportal/news/worldnews.php on line 93

Warning: mysql_db_query() [function.mysql-db-query]: A link to the server could not be established in /pub/home/javaport/javaportal/news/worldnews.php on line 93

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /pub/home/javaport/javaportal/news/worldnews.php on line 95