Класс URL
- Все реализованные интерфейсы:
Serializable
public final class URL extends Object implements Serializable
URL представляет собой унифицированный локатор ресурса, указатель на «ресурс» в глобальной сети. Ресурсом может быть что-то простое, например, файл или каталог, или ссылка на более сложный объект, например, запрос к базе данных или поисковой системе. Дополнительную информацию о типах URL-адресов и их форматах можно найти по адресу: Типы URL-адресов В общем случае URL-адрес можно разбить на несколько частей. Рассмотрим следующий пример:
http://www.example.com/docs/resource1.html
Приведённый выше URL-адрес указывает на то, что используемый протокол — http (протокол передачи гипертекста), и что информация находится на узле с именем www.example.com. Информация на этом узле называется /docs/resource1.html. Точное значение этого имени на узле зависит как от протокола, так и от самого узла. Обычно информация хранится в файле, но она может быть сгенерирована динамически. Эта часть URL-адреса называется компонентом пути.
URL-адрес может необязательно указывать «порт», который является номером порта, к которому устанавливается TCP-соединение на удалённом узле. Если порт не указан, используется порт по умолчанию для соответствующего протокола. Например, порт по умолчанию для http составляет 80. Альтернативный порт можно указать следующим образом:
http://www.example.com:1080/docs/resource1.html
Синтаксис URL определяется в RFC 2396: Унифицированные идентификаторы ресурсов (URI): Общий синтаксис, дополненный RFC 2732: Формат литеральных адресов IPv6 в URL-адресах. Формат литеральных адресов IPv6 также поддерживает scope_ids. Синтаксис и использование scope_ids описаны здесь.
К URL-адресу может быть добавлен «фрагмент», также известный как «ref» или «ссылка». Фрагмент указывается символом решётки «#» и последующими символами. Например,
http://www.example.com/index.html#chapter1
Этот фрагмент технически не является частью URL-адреса. Скорее, он указывает, что после получения указанного ресурса приложение особенно заинтересовано в той части документа, к которой прикреплена метка chapter1. Значение метки зависит от ресурса.
Приложение также может указать «относительный URL», содержащий только ту информацию, которая необходима для доступа к ресурсу относительно другого URL-адреса. Относительные URL-адреса часто используются в HTML-страницах. Например, если содержимое URL-адреса:
http://www.example.com/index.html
содержало в себе относительный URL:
FAQ.html
это было бы сокращением для:
http://www.example.com/FAQ.html
Относительный URL-адрес не обязан указывать все компоненты URL-адреса. Если протокол, имя узла или номер порта отсутствуют, значение наследуется от полностью указанного URL-адреса. Компонент файла должен быть указан. Необязательный фрагмент не наследуется.
Создание экземпляров URL
Конструкторы java.net.URL устарели. Разработчикам рекомендуется использовать java.net.URI для разбора или построения URL. В тех случаях, когда требуется экземпляр
java.net.URL для открытия соединения, URI можно использовать для построения или разбора строки URL, возможно, вызвав URI.parseServerAuthority() для проверки возможности разбора компонента авторизации как авторизации на основе сервера, а затем вызвав URI.toURL() для создания экземпляра URL. Конструкторы URL-адреса предназначены для выброса исключения MalformedURLException, но фактический разбор/валидация, выполняемая, зависит от реализации. Некоторые операции разбора/валидации могут быть отложены до более позднего момента, когда вызывается реализация обработчика потока обработчика потока. Создание экземпляра URL не гарантирует соответствие синтаксису URL-адреса.
Сам класс URL не кодирует и не декодирует компоненты URL-адреса в соответствии с механизмом экранирования, определённым в RFC2396. Ответственность за кодирование необходимых полей, которые должны быть экранированы перед вызовом URL, и за декодирование экранированных полей, возвращаемых из URL, лежит на вызывающей стороне. Кроме того, поскольку URL не знает о экранировании URL, он не распознаёт эквивалентность кодированной или декодированной формы одного и того же URL-адреса. Например, два URL-адреса:
http://foo.com/hello world/ and http://foo.com/hello%20worldсчитались бы не равными друг другу.
Обратите внимание, что класс URI выполняет экранирование своих компонент в определённых случаях. Рекомендуемый способ управления кодированием и декодированием URL-адресов — использование класса URI, а также преобразование между этими двумя классами с использованием toURI() и URI.toURL().
Классы URLEncoder и URLDecoder также можно использовать, но только для кодирования HTML-форм, что не является тем же самым, что и схема кодирования, определённая в RFC2396.
- Примечание API:
-
Приложения, работающие с путями к файлам и URI-файлов, должны с большой осторожностью использовать соответствующие методы для преобразования между ними. Метод-фабрика
Path.of(URI)и конструкторFile(URI)могут быть использованы для создания объектовPathилиFileиз URI файла.Path.toUri()иFile.toURI()могут быть использованы для созданияURIиз пути к файлу, который может быть преобразован в URL с помощьюURI.toURL(). Приложения никогда не должны пытаться создавать или разбиратьURLиз прямого строкового представленияFileилиPathэкземпляра.Перед построением
URLизURI, и в зависимости от используемого протокола, приложения должны рассмотреть возможность проверки того, может ли авторизация URI быть обработана как авторизация на основе сервера.Некоторые компоненты URL-адреса или URI, такие как userinfo, могут быть использованы для создания вводящих в заблуждение URL-адресов или URI. Приложения, которые работают с URL-адресами или URI, должны учитывать рекомендации, изложенные в RFC3986, раздел 7, Учёт безопасности.
Все конструкторы
URLмогут выбросить исключениеMalformedURLException. В частности, если реализация базовогоURLStreamHandlerотклоняет или известно, что отклоняет любой из параметров, может быть выброшено исключениеMalformedURLException. Как правило, конструктор, вызывающий метод parseURL обработчика потока, может выброситьMalformedURLExceptionесли реализация базового обработчика потока этого метода выбросит исключениеIllegalArgumentException. Однако, какие проверки выполняются или не выполняются обработчиками потоков, зависит от реализации, и вызывающие стороны не должны полагаться на такие проверки для полной проверки URL-адреса. - С тех пор:
- 1.0
- Внешние спецификации
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
URL |
Устаревший. |
URL |
Устаревший. Используйте URI.toURL() для создания экземпляра URL. |
URL |
Устаревший. Используйте of(URI, URLStreamHandler) для создания экземпляра URL, связанного с обработчиком пользовательского протокола. |
URL |
Устаревший. Используйте URI.toURL() для создания экземпляра URL. |
URL |
Устаревший. Используйте URI.toURL() для создания экземпляра URL. |
URL |
Устаревший. Используйте of(URI, URLStreamHandler) для создания экземпляра URL, связанного с обработчиком пользовательского протокола. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает этот URL на равенство с другим объектом. |
String |
getAuthority() |
Получает часть authority этого URL. |
final Object |
getContent() |
Получает содержимое этого URL. |
final Object |
getContent |
Получает содержимое этого URL. |
int |
getDefaultPort() |
Получает стандартный номер порта протокола, связанного с этим URL. |
String |
getFile() |
Получает имя файла этого URL. |
String |
getHost() |
Получает имя хоста этого URL, если применимо. |
String |
getPath() |
Получает часть path этого URL. |
int |
getPort() |
Получает номер порта этого URL. |
String |
getProtocol() |
Получает имя протокола этого URL. |
String |
getQuery() |
Получает часть query этого URL. |
String |
getRef() |
Получает якорь (также известен как «ссылка») этого URL. |
String |
getUserInfo() |
Получает часть userInfo этого URL. |
int |
hashCode() |
Создает целое число, подходящее для индексации таблиц хеширования. |
static URL |
of |
Создаёт URL из URI, как если бы вызывалась uri.toURL(), но связывая его с заданным URLStreamHandler, если это разрешено. |
URLConnection |
openConnection() |
Возвращает экземпляр URLConnection, который представляет собой соединение с удалённым объектом, на который ссылается URL. |
URLConnection |
openConnection |
То же, что openConnection(), за исключением того, что соединение будет выполнено через указанный прокси; обработчики протоколов, которые не поддерживают проксирование, игнорируют параметр прокси и выполняют обычное соединение. |
final InputStream |
openStream() |
Открывает соединение с этим URL и возвращает InputStream для чтения из этого соединения. |
boolean |
sameFile |
Сравнивает два URL, исключая компонент фрагмента. |
static void |
setURLStreamHandlerFactory |
Устанавливает URLStreamHandlerFactory приложения. |
String |
toExternalForm() |
Создаёт строковое представление этого URL. |
String |
toString() |
Создаёт строковое представление этого URL. |
URI |
toURI() |
Возвращает эквивалент URI для этого URL. |
Подробное описание конструкторов
URL
@Deprecated(since="20") public URL(String protocol, String host, int port, String file) throws MalformedURLException
URI.toURL() для создания экземпляра URL. Дополнительные сведения см. в примечании к устареванию конструктора.URL из указанного protocol, host, port числа и file. host может быть представлен как имя хоста или литералом IP-адреса. Если используется литерал IPv6-адреса, он должен быть заключён в квадратные скобки ('[' и ']'), как указано в RFC 2732; однако, также принимается формат литерала IPv6-адреса, определённый в RFC 2373: Архитектура адресации IP версии 6.
Указание port числа -1 указывает, что URL должен использовать стандартный порт для протокола.
Если это первый объект URL, создаваемый с указанным протоколом, для этого протокола создаётся объект обработчика потока — экземпляр класса URLStreamHandler:
- Если приложение ранее настроило экземпляр
URLStreamHandlerFactoryв качестве фабрики обработчика потока, то методcreateURLStreamHandlerэтого экземпляра вызывается со строкой протокола в качестве аргумента для создания обработчика потока. - Если фабрика
URLStreamHandlerFactoryещё не настроена или метод фабрикиcreateURLStreamHandlerвозвращаетnull, то используется механизм ServiceLoader для поиска реализаций URLStreamHandlerProvider с помощью загрузчика классов системы. Порядок поиска поставщиков определяется реализацией, и реализация может кэшировать найденных поставщиков. Любой ServiceConfigurationError,ErrorилиRuntimeException, возникающие вcreateURLStreamHandler, будут переданы потоку, вызвавшему конструктор. МетодcreateURLStreamHandlerкаждого поставщика, если он создан, вызывается со строкой протокола до тех пор, пока поставщик не вернёт не null или пока не будут исчерпаны все поставщики. - Если на предыдущем шаге обработчик протокола не найден, конструктор считывает значение системной переменной:
Если значение этой системной переменной неjava.protocol.handler.pkgsnull, оно интерпретируется как список пакетов, разделённых вертикальной косой чертой '|'. Конструктор пытается загрузить класс по имени:
, где<package>.<protocol>.Handler<package>заменяется именем пакета, а<protocol>— именем протокола. Если этот класс не существует или если он существует, но не является подклассомURLStreamHandler, то пытается загрузить следующий пакет из списка. - Если на предыдущем шаге обработчик протокола не найден, конструктор пытается загрузить встроенный обработчик протокола. Если этот класс не существует или если он существует, но не является подклассом
URLStreamHandler, то выбрасываетсяMalformedURLException.
Обработчики протоколов для следующих протоколов гарантированно существуют на пути поиска:
httphttpsfilejar
Валидация входных данных этим конструктором не выполняется.
- Параметры:
-
protocol- имя используемого протокола. -
host- имя хоста. -
port- номер порта на хосте. -
file- файл на хосте - Исключения:
-
MalformedURLException- если неизвестен протокол или порт является отрицательным числом, отличным от -1, или если реализация подчинённого обработчика потока отклоняет или известно, что отклоняетURL - Внешние спецификации
- См. также:
URL
@Deprecated(since="20") public URL(String protocol, String host, String file) throws MalformedURLException
URI.toURL() для создания экземпляра URL. Дополнительные сведения см. в примечании к устареванию конструктора.protocol имени, host имени и file имени. Используется стандартный порт для указанного протокола. Этот конструктор эквивалентен четырёхаргументному конструктору с единственным отличием — использование стандартного порта для указанного протокола. Валидация входных данных этим конструктором не выполняется.
- Параметры:
-
protocol- имя используемого протокола. -
host- имя хоста. -
file- файл на хосте. - Исключения:
-
MalformedURLException- если указан неизвестный протокол или если реализация подчинённого обработчика потока отклоняет или известно, что отклоняетURL - См. также:
URL
@Deprecated(since="20") public URL(String protocol, String host, int port, String file, URLStreamHandler handler) throws MalformedURLException
of(URI, URLStreamHandler) для создания экземпляра URL, связанного с пользовательским обработчиком протокола. Дополнительные сведения см. в примечании к устареванию конструктора.URL из указанного protocol, host, port числа, file, и handler. Указание port числа -1 указывает, что URL должен использовать стандартный порт для протокола. Указание handler null указывает, что URL должен использовать стандартный обработчик потока для протокола, как описано для: URL(java.lang.String, java.lang.String, int, java.lang.String) Если обработчик не равен null и существует менеджер безопасности, вызывается метод checkPermission менеджера безопасности с разрешением NetPermission("specifyStreamHandler"). Это может привести к SecurityException. Валидация входных данных этим конструктором не выполняется.
- Параметры:
-
protocol- имя используемого протокола. -
host- имя хоста. -
port- номер порта на хосте. -
file- файл на хосте -
handler- обработчик потока для URL. - Исключения:
-
MalformedURLException- если неизвестен протокол или порт является отрицательным числом, отличным от -1, или если реализация подчинённого обработчика потока отклоняет или известно, что отклоняетURL -
SecurityException- если существует менеджер безопасности, и его методcheckPermissionне разрешает явно указывать обработчик потока. - См. также:
URL
@Deprecated(since="20") public URL(String spec) throws MalformedURLException
URI.toURL() для создания экземпляра URL. Дополнительные сведения см. в примечании о устаревании конструктора.URL из String представления. Этот конструктор эквивалентен вызову двухаргументного конструктора с null первым аргументом.
- Параметры:
-
spec-Stringдля разбора в качестве URL. - Исключения:
-
MalformedURLException- если не указан протокол или найден неизвестный протокол, илиspecявляетсяnull, или разобранный URL не соответствует синтаксису соответствующего протокола, или метод parseURL базового обработчика потоков выбрасываетIllegalArgumentException - См. также:
URL
@Deprecated(since="20") public URL(URL context, String spec) throws MalformedURLException
URI.toURL() для создания экземпляра URL. Дополнительные сведения см. в примечании о устаревании конструктора.
<scheme>://<authority><path>?<query>#<fragment>
Ссылка разбирается на схемы, авторитет, путь, запрос и фрагмент. Если компонент пути пуст, а компоненты схемы, авторитета и запроса не определены, то новый URL является ссылкой на текущий документ. В противном случае, фрагмент и компоненты запроса, присутствующие в спецификаторе, используются в новом URL. Если компонент схемы определён в заданном спецификаторе и не совпадает со схемой контекста, то новый URL создаётся как абсолютный URL, основанный только на спецификаторе. В противном случае компонент схемы наследуется от контекстного URL.
Если компонент авторитета присутствует в спецификаторе, то спецификатор рассматривается как абсолютный, и авторитет и путь спецификатора заменят авторитет и путь контекста. Если компонент авторитета отсутствует в спецификаторе, то авторитет нового URL наследуется от контекста.
Если компонент пути спецификатора начинается с косой черты "/", то путь рассматривается как абсолютный, и путь спецификатора заменяет путь контекста.
В противном случае путь рассматривается как относительный и добавляется к пути контекста, как описано в RFC2396. Также в этом случае путь канонизируется путём удаления изменений каталога, вносимых вхождениями «..» и «.».
Более подробное описание разбора URL см. в RFC2396.
- Требования к реализации:
- Разбор URL включает вызов метода
parseURLдля выбранного обработчика. - Параметры:
-
context- контекст для разбора спецификатора. -
spec-Stringдля разбора в качестве URL. - Исключения:
-
MalformedURLException- если не указан протокол или найден неизвестный протокол, илиspecявляетсяnull, или разобранный URL не соответствует синтаксису соответствующего протокола, или метод parseURL базового обработчика потоков выбрасываетIllegalArgumentException - См. также:
URL
@Deprecated(since="20") public URL(URL context, String spec, URLStreamHandler handler) throws MalformedURLException
of(URI, URLStreamHandler) для создания экземпляра URL, связанного с пользовательским обработчиком протокола. Дополнительные сведения см. в примечании о устаревании конструктора.- Требования к реализации:
- Разбор URL включает вызов метода
parseURLдля выбранного обработчика. - Параметры:
-
context- контекст для разбора спецификатора. -
spec-Stringдля разбора в качестве URL. -
handler- обработчик потоков для URL. - Исключения:
-
MalformedURLException- если не указан протокол или найден неизвестный протокол, илиspecявляетсяnull, или разобранный URL не соответствует синтаксису соответствующего протокола, или метод parseURL базового обработчика потоков выбрасываетIllegalArgumentException -
SecurityException- если существует менеджер безопасности, и его методcheckPermissionне позволяет указать обработчик потоков. - См. также:
Подробности методов
of
public static URL of(URI uri, URLStreamHandler handler) throws MalformedURLException
uri.toURL(), но связывает его с заданным URLStreamHandler, если разрешено.- Примечание API:
- Приложения должны рассмотреть возможность выполнения дополнительных проверок целостности перед созданием
URLи открытием подключения. См. примечание API в документации по API класса. - Требования к реализации:
- Реализация данного метода включает вызов метода
parseURLдля выбранного обработчика. - Параметры:
-
uri-URIдля построения возвращаемогоURL -
handler- пользовательский обработчик потоков протокола для возвращаемогоURL. Может бытьnull, в таком случае будет использован стандартный обработчик потоков протокола, если таковой имеется. - Возвращает:
- новый экземпляр
URLсозданный из заданногоURIи связанный с заданнымURLStreamHandler, если таковой имеется - Исключения:
-
NullPointerException- еслиuriявляетсяnull -
IllegalArgumentException- если не указан протокол (схема uri являетсяnull), или еслиURLStreamHandlerне являетсяnullи не может быть установлен для данного протокола -
MalformedURLException- если найден неизвестный протокол, или заданный URI не соответствует синтаксису соответствующего протокола, или метод parseURL базового обработчика потоков выбрасываетIllegalArgumentException -
SecurityException- если существует менеджер безопасности, и его методcheckPermissionне позволяет указать обработчик потоков - С:
- 20
- См. также:
getQuery
public String getQuery()
URL.- Возвращает:
- часть запроса этого
URL, илиnullесли она отсутствует - С:
- 1.3
getPath
public String getPath()
URL.- Возвращает:
- часть пути этого
URL, или пустую строку, если она отсутствует - С:
- 1.3
getUserInfo
public String getUserInfo()
URL.- Возвращает:
- часть userInfo этого
URL, илиnullесли она отсутствует - С:
- 1.3
getAuthority
public String getAuthority()
URL.- Возвращает:
- часть авторитета этого
URL - С:
- 1.3
getPort
public int getPort()
URL.- Возвращает:
- номер порта, или -1, если порт не установлен
getDefaultPort
public int getDefaultPort()
URL. Если схема URL или URLStreamHandler для URL не определяют номер порта по умолчанию, то возвращается -1.- Возвращает:
- номер порта
- С:
- 1.4
getProtocol
public String getProtocol()
URL.- Возвращает:
- протокол этого
URL.
getHost
public String getHost()
URL, если применимо. Формат хоста соответствует RFC 2732, т.е. для литерального IPv6 адреса этот метод вернёт IPv6 адрес, заключённый в квадратные скобки ('[' и ']').- Возвращает:
- имя хоста этого
URL.
getFile
public String getFile()
URL. Возвращаемая часть файла будет такой же, как getPath(), плюс конкатенация значения getQuery(), если таковое имеется. Если нет части запроса, этот метод и getPath() вернут одинаковый результат.- Возвращает:
- имя файла этого
URL, или пустую строку, если его нет
getRef
public String getRef()
URL.- Возвращает:
- якорь (также известный как «ссылка») этого
URL, илиnullесли его нет
equals
public boolean equals(Object obj)
Если данный объект не является URL, то этот метод сразу возвращает false.
Два объекта URL равны, если у них одинаковый протокол, ссылки на эквивалентные хосты, одинаковый номер порта на хосте, и одинаковый файл и фрагмент файла.
Два хоста считаются эквивалентными, если оба имени хостов можно разрешить в одни и те же IP-адреса; в противном случае, если ни одно из имён хостов нельзя разрешить, имена хостов должны быть равны без учёта регистра; или оба имени хостов равны null.
Поскольку сравнение хостов требует разрешения имён, эта операция является блокирующей операцией.
Примечание: определённое поведение для equals известно как несовместимое с виртуальным хостингом в HTTP.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- URL для сравнения. - Возвращает:
-
trueесли объекты идентичны;falseв противном случае. - См. также:
hashCode
public int hashCode()
Код хеширования основан на всех компонентах URL, релевантных для сравнения URL. Таким образом, эта операция является блокирующей операцией.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- код хеширования для этого
URL. - См. также:
sameFile
public boolean sameFile(URL other)
Возвращает true если этот URL и аргумент other равны, не учитывая компонент фрагмента.
- Параметры:
-
other- сравниваемыйURL. - Возвращает:
-
trueесли они ссылаются на один и тот же удалённый объект;falseв противном случае.
toString
public String toString()
URL. Строка создаётся путём вызова метода toExternalForm обработчика протокола потока для этого объекта.- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого объекта.
- См. также:
toExternalForm
public String toExternalForm()
URL. Строка создаётся путём вызова метода toExternalForm обработчика протокола потока для этого объекта.- Возвращает:
- строковое представление этого объекта.
- См. также:
toURI
public URI toURI() throws URISyntaxException
URI для этого URL. Этот метод работает так же, как new URI (this.toString()). Примечание: любой экземпляр URL, который соответствует RFC 2396, может быть преобразован в URI. Однако некоторые URL, которые не строго соответствуют стандарту, не могут быть преобразованы в URI.
- Возвращает:
- экземпляр URI, эквивалентный этому URL.
- Исключения:
-
URISyntaxException- если этот URL не отформатирован строго в соответствии с RFC2396 и не может быть преобразован в URI. - С:
- 1.5
openConnection
public URLConnection openConnection() throws IOException
URLConnection, представляющий соединение с удалённым объектом, на который указывает этот URL. Каждый раз при вызове метода URLStreamHandler.openConnection(URL) обработчика протоколов для этого URL создаётся новый экземпляр URLConnection.
Следует отметить, что экземпляр URLConnection не устанавливает фактическое сетевое соединение при создании. Это произойдёт только при вызове URLConnection.connect().
Если для протокола URL (например, HTTP или JAR) существует общедоступный специализированный подкласс URLConnection, принадлежащий одному из следующих пакетов или их подпакетов: java.lang, java.io, java.util, java.net, возвращаемое соединение будет этого подкласса. Например, для HTTP будет возвращён HttpURLConnection, а для JAR - JarURLConnection.
- Возвращает:
- a
URLConnectionведущий к URL. - Исключения:
-
IOException- если возникает исключение I/O. - См. также:
openConnection
public URLConnection openConnection(Proxy proxy) throws IOException
openConnection(), за исключением того, что соединение будет установлено через указанный прокси-сервер; обработчики протоколов, которые не поддерживают проксирование, проигнорируют параметр прокси и установят обычное соединение. Вызов этого метода обходит системные настройки по умолчанию ProxySelector.- Параметры:
-
proxy- прокси-сервер, через который будет установлено это соединение. Если требуется прямое соединение, необходимо указать Proxy.NO_PROXY. - Возвращает:
- a
URLConnectionк URL. - Исключения:
-
IOException- если возникает исключение I/O. -
SecurityException- если присутствует менеджер безопасности, и у вызывающего объекта нет разрешения на подключение к прокси. -
IllegalArgumentException- будет брошено, если прокси null или прокси неверного типа -
UnsupportedOperationException- если подкласс, реализующий обработчик протокола, не поддерживает этот метод. - С:
- 1.5
- См. также:
openStream
public final InputStream openStream() throws IOException
URL и возвращает InputStream для чтения из этого подключения. Этот метод является сокращением для:
openConnection().getInputStream()
- Возвращает:
- потоковый ввод для чтения из подключения к URL.
- Исключения:
-
IOException- если возникает исключение I/O. - См. также:
getContent
public final Object getContent() throws IOException
openConnection().getContent()
- Возвращает:
- содержимое этого URL.
- Исключения:
-
IOException- если возникает исключение I/O. - См. также:
getContent
public final Object getContent(Class<?>[] classes) throws IOException
openConnection().getContent(classes)
- Параметры:
-
classes- массив типов Java - Возвращает:
- объект содержимого этого URL, который является первой совпадающей записью из типов, указанных в массиве классов. null, если ни один из запрошенных типов не поддерживается.
- Исключения:
-
IOException- если возникает исключение I/O. - С:
- 1.3
- См. также:
setURLStreamHandlerFactory
public static void setURLStreamHandlerFactory(URLStreamHandlerFactory fac)
Экземпляр URLStreamHandlerFactory используется для создания обработчика протокола потока из имени протокола.
Если существует менеджер безопасности, этот метод сначала вызывает метод checkSetFactory менеджера безопасности, чтобы убедиться, что операция разрешена. Это может привести к исключению SecurityException.
- Параметры:
-
fac- желаемая фабрика. - Исключения:
-
Error- если приложение уже установило фабрику. -
SecurityException- если менеджер безопасности существует и его методcheckSetFactoryне разрешает операцию. - См. также:
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/net/URL.html
URI.toURL()для создания экземпляра URL.