Spec-Zone.ru › OpenJDK 24

Заголовки класса

java.lang.Object
com.sun.net.httpserver.Headers
Все реализуемые интерфейсы:
Map<String, List<String>>
public class Headers extends Object implements Map<String, List<String>>
Заголовки HTTP-запроса и ответа представлены этим классом, который реализует интерфейс Map<String, List <String>>. Ключами являются регистронезависимые строки, представляющие имена заголовков, а значение, связанное с каждым ключом, — List<String> с одним элементом для каждого вхождения имени заголовка в запросе или ответе.

Например, если экземпляр заголовка ответа содержит один ключ "HeaderName" со значениями "value1 и value2", то этот объект отображается как две строки заголовка:

 HeaderName: value1
 HeaderName: value2
 
Предоставляются все обычные методы Map, но наиболее вероятно, что будут использоваться следующие дополнительные удобные методы:
  • getFirst(String) возвращает одно значение заголовка или первое значение многозначного заголовка.
  • add(String,String) добавляет заданное значение заголовка в список для данного ключа.
  • set(String,String) устанавливает заданное поле заголовка в единственное заданное значение, перезаписывая любые существующие значения в списке значений.

Экземпляр Headers является либо изменяемым, либо неизменяемым. Изменяемые заголовки позволяют добавлять, удалять или изменять имена и значения заголовков, например, экземпляр, возвращаемый HttpExchange.getResponseHeaders(). Неизменяемые заголовки запрещают любые изменения имен или значений заголовков, например, экземпляр, возвращаемый HttpExchange.getRequestHeaders(). Методы-модификаторы для неизменяемого экземпляра заголовков безусловно вызывают исключение UnsupportedOperationException.

Все методы в этом классе отклоняют null значения для ключей и значений. null ключи никогда не будут присутствовать в заголовках HTTP-запросов или ответов.

С:
1.6

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в интерфейсе java.util.Map

Map.Entry<K,V>

Краткое описание конструкторов

Конструктор Описание
Headers()
Создаёт пустой экземпляр Headers.
Headers(Map<String, List<String>> headers)
Создаёт изменяемый Headers из заданного headers с теми же именами и значениями заголовков.

Краткое описание методов

Модификатор и тип Метод Описание
void add(String key, String value)
Добавляет заданное value в список заголовков для заданного key.
void clear()
Удаляет все сопоставления из этой карты (дополнительная операция).
boolean containsKey(Object key)
Возвращает true, если эта карта содержит сопоставление для заданного ключа.
boolean containsValue(Object value)
Возвращает true, если эта карта сопоставляет один или несколько ключей со значением.
Set<Map.Entry<String, List<String>>> entrySet()
Возвращает Set представление отображений, содержащихся в этой карте.
boolean equals(Object o)
Сравнивает указанный объект с этой картой на равенство.
List<String> get(Object key)
Возвращает значение, которому сопоставлен указанный ключ, или null, если эта карта не содержит сопоставления для ключа.
String getFirst(String key)
Возвращает первое значение из List значений String для данного key, или null, если отображение для key не существует.
int hashCode()
Возвращает значение хэш-кода для этой карты.
boolean isEmpty()
Возвращает true, если эта карта не содержит сопоставлений ключ-значение.
Set<String> keySet()
Возвращает Set представление ключей, содержащихся в этой карте.
static Headers of(String... headers)
Возвращает неизменяемый Headers с заданными именами и значениями пар как набором заголовков.
static Headers of(Map<String, List<String>> headers)
Возвращает неизменяемый Headers из заданного headers с теми же именами и значениями заголовков.
List<String> put(String key, List<String> value)
Связывает указанное значение с указанным ключом в этой карте (дополнительная операция).
void putAll(Map<? extends String, ? extends List<String>> t)
Копирует все отображения из заданной карты в эту карту (дополнительная операция).
List<String> remove(Object key)
Удаляет отображение ключа из этой карты, если оно присутствует (дополнительная операция).
void set(String key, String value)
Устанавливает заданное value в качестве единственного значения заголовка для заданного key.
int size()
Возвращает количество сопоставлений ключ-значение в этой карте.
Collection<List<String>> values()
Возвращает Collection представление значений, содержащихся в этой карте.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы, объявленные в интерфейсе java.util.Map

compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll

Подробное описание конструкторов

Headers

public Headers()
Создаёт пустой экземпляр Headers.

Headers

public Headers(Map<String, List<String>> headers)
Создаёт изменяемую коллекцию Headers из заданной headers с теми же именами и значениями заголовков.
Параметры:
headers - карта имён и значений заголовков
Исключения:
NullPointerException - если headers или любое из его имён или значений равно null, или если какое-либо значение содержит null.
С:
18

Подробное описание методов

size

public int size()
Описание скопировано из интерфейса: Map
Возвращает количество пар ключ-значение в этой карте. Если карта содержит более Integer.MAX_VALUE элементов, возвращает Integer.MAX_VALUE.
Указано в:
size в интерфейсе Map<String, List<String>>
Возвращает:
количество пар ключ-значение в этой карте

isEmpty

public boolean isEmpty()
Описание скопировано из интерфейса: Map
Возвращает true, если эта карта не содержит пар ключ-значение.
Указано в:
isEmpty в интерфейсе Map<String, List<String>>
Возвращает:
true, если эта карта не содержит пар ключ-значение

containsKey

public boolean containsKey(Object key)
Описание скопировано из интерфейса: Map
Возвращает true, если эта карта содержит отображение для указанного ключа. Более формально, возвращает true тогда и только тогда, когда эта карта содержит отображение для ключа k, такого, что Objects.equals(key, k). (Может быть не более одного такого отображения.)
Указано в:
containsKey в интерфейсе Map<String, List<String>>
Параметры:
key - ключ, присутствие которого в этой карте необходимо проверить
Возвращает:
true, если эта карта содержит отображение для указанного ключа

containsValue

public boolean containsValue(Object value)
Описание скопировано из интерфейса: Map
Возвращает true, если эта карта сопоставляет один или несколько ключей со значением. Более формально, возвращает true тогда и только тогда, когда эта карта содержит, по крайней мере, одно отображение со значением v, такое что Objects.equals(value, v). Эта операция, скорее всего, потребует линейного времени, пропорционального размеру карты, для большинства реализаций интерфейса Map.
Указано в:
containsValue в интерфейсе Map<String, List<String>>
Параметры:
value - значение, чьё присутствие в этой карте нужно проверить
Возвращает:
true, если эта карта сопоставляет один или несколько ключей со значением

get

public List<String> get(Object key)
Описание скопировано из интерфейса: Map
Возвращает значение, которому соответствует указанный ключ, или null, если эта карта не содержит отображения для ключа.

Более формально, если эта карта содержит отображение от ключа k к значению v, такое что Objects.equals(key, k), то этот метод возвращает v; в противном случае он возвращает null. (Может быть не более одного такого отображения.)

Если эта карта допускает нулевые значения, то возвращаемое значение null не обязательно указывает на то, что карта не содержит отображения для ключа; также возможно, что карта явно сопоставляет ключ со значением null. Операция containsKey может быть использована для различения этих двух случаев.

Указано в:
get в интерфейсе Map<String, List<String>>
Параметры:
key - ключ, связанное значение которого нужно вернуть
Возвращает:
значение, которому соответствует указанный ключ, или null, если эта карта не содержит отображения для ключа

getFirst

public String getFirst(String key)
Возвращает первое значение из List значений String для данного key, или null, если отображение для key не существует.
Параметры:
key - ключ для поиска
Возвращает:
первое значение String, связанное с ключом, или null, если отображение для ключа не существует

put

public List<String> put(String key, List<String> value)
Описание скопировано из интерфейса: Map
Связывает указанное значение с указанным ключом в этой карте (необязательная операция). Если карта ранее содержала отображение для ключа, старое значение заменяется указанным значением. (Карта m считается содержащей отображение для ключа k, если и только если m.containsKey(k) вернёт true.)
Указано в:
put в интерфейсе Map<String, List<String>>
Параметры:
key - ключ, с которым должно быть связано указанное значение
value - значение, которое должно быть связано с указанным ключом
Возвращает:
предыдущее значение, связанное с key, или null, если для key не было отображения. (Возвращаемое значение null также может указывать на то, что карта ранее связывала null со значением key, если реализация поддерживает null значения.)

add

public void add(String key, String value)
Добавляет заданное value в список заголовков для данного key. Если отображение ещё не существует, оно создаётся.
Параметры:
key - имя заголовка
value - значение, которое нужно добавить к заголовку

set

public void set(String key, String value)
Устанавливает заданное value в качестве единственного значения заголовка для данного key. Если отображение ещё не существует, оно создаётся.
Параметры:
key - имя заголовка
value - значение заголовка для установки

remove

public List<String> remove(Object key)
Описание скопировано из интерфейса: Map
Удаляет отображение для ключа из этой карты, если оно присутствует (необязательная операция). Более формально, если эта карта содержит отображение от ключа k к значению v, такое что Objects.equals(key, k), то это отображение удаляется. (В карте может быть не более одного такого отображения.)

Возвращает значение, которое эта карта ранее ассоциировала с ключом, или null, если в карте не было отображения для ключа.

Если эта карта допускает нулевые значения, то возвращаемое значение null не обязательно указывает на то, что карта не содержала отображения для ключа; также возможно, что карта явно сопоставила ключ со значением null.

Карта не будет содержать отображения для указанного ключа после возвращения вызова.

Указано в:
remove в интерфейсе Map<String, List<String>>
Параметры:
key - ключ, отображение которого нужно удалить из карты
Возвращает:
предыдущее значение, связанное с key, или null, если для key не было отображения.

putAll

public void putAll(Map<? extends String, ? extends List<String>> t)
Описание скопировано из интерфейса: Map
Копирует все отображения из указанной карты в эту карту (необязательная операция). Эффект этого вызова эквивалентен вызову put(k, v) для этой карты один раз для каждого отображения от ключа k к значению v в указанной карте. Поведение этой операции не определено, если указанная карта изменяется во время выполнения операции. Если указанная карта имеет определённый порядок обработки элементов, обработка её отображений, как правило, происходит в этом порядке.
Указано в:
putAll в интерфейсе Map<String, List<String>>
Параметры:
t - отображения, которые нужно сохранить в этой карте

clear

public void clear()
Описание скопировано из интерфейса: Map
Удаляет все отображения из этой карты (необязательная операция). Карта будет пустой после возврата этого вызова.
Указано в:
clear в интерфейсе Map<String, List<String>>

keySet

public Set<String> keySet()
Описание скопировано из интерфейса: Map
Возвращает вид Set ключей, содержащихся в этой карте. Множество подкрепляется картой, поэтому изменения в карте отражаются в множестве и наоборот. Если карта изменяется во время итерации по множеству (кроме операций самого итератора remove), результаты итерации не определены. Множество поддерживает удаление элементов, что удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Оно не поддерживает операции add или addAll.
Указано в:
keySet в интерфейсе Map<String, List<String>>
Возвращает:
вид множества ключей, содержащихся в этой карте

values

public Collection<List<String>> values()
Описание скопировано из интерфейса: Map
Возвращает вид Collection значений, содержащихся в этой карте. Коллекция подкрепляется картой, поэтому изменения в карте отражаются в коллекции и наоборот. Если карта изменяется во время итерации по коллекции (кроме операций самого итератора remove), результаты итерации не определены. Коллекция поддерживает удаление элементов, что удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Collection.remove, removeAll, retainAll и clear. Она не поддерживает операции add или addAll.
Указано в:
values в интерфейсе Map<String, List<String>>
Возвращает:
вид коллекции значений, содержащихся в этой карте

entrySet

public Set<Map.Entry<String, List<String>>> entrySet()
Описание скопировано из интерфейса: Map
Возвращает вид Set отображений, содержащихся в этой карте. Множество подкрепляется картой, поэтому изменения в карте отражаются в множестве и наоборот. Если карта изменяется во время итерации по множеству (кроме операций самого итератора remove или операции setValue на элементе отображения, возвращенном итератором), результаты итерации не определены. Множество поддерживает удаление элементов, что удаляет соответствующее отображение из карты, с помощью операций Iterator.remove, Set.remove, removeAll, retainAll и clear. Оно не поддерживает операции add или addAll.
Указано в:
entrySet в интерфейсе Map<String, List<String>>
Возвращает:
вид множества отображений, содержащихся в этой карте

equals

public boolean equals(Object o)
Описание скопировано из интерфейса: Map
Сравнивает указанный объект с этой картой на равенство. Возвращает true, если данный объект также является картой и две карты представляют одинаковые отображения. Более формально, две карты m1 и m2 представляют одинаковые отображения, если m1.entrySet().equals(m2.entrySet()). Это гарантирует, что метод equals работает корректно для различных реализаций интерфейса Map.
Указано в:
equals в интерфейсе Map<String, List<String>>
Переопределяет:
equals в классе Object
Параметры:
o - объект, который будет сравниваться на равенство с этой картой
Возвращает:
true, если указанный объект равен этой карте
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Описание скопировано из интерфейса: Map
Возвращает значение хэш-кода для этой карты. Хэш-код карты определяется как сумма хэш-кодов каждого элемента в представлении entrySet() карты. Это гарантирует, что m1.equals(m2) подразумевает, что m1.hashCode()==m2.hashCode() для любых двух карт m1 и m2, как требуется общим соглашением Object.hashCode().
Указано в:
hashCode в интерфейсе Map<String, List<String>>
Переопределяет:
hashCode в классе Object
Возвращает:
значение хэш-кода для этой карты
См. также:
  • Map.Entry.hashCode()
  • Object.equals(Object)
  • Map.equals(Object)

of

public static Headers of(String... headers)
Возвращает неизменяемую Headers с заданными именами и значениями как набором заголовков.

Предоставленные String экземпляры должны чередоваться как имена заголовков и значения заголовков. Для добавления нескольких значений к одному имени, одно и то же имя должно быть предоставлено с каждым новым значением. Если предоставленный headers пустой, то возвращается пустая Headers.

Параметры:
headers - список пар имя-значение
Возвращает:
неизменяемые заголовки с заданными парами имя-значение
Исключения:
NullPointerException - если headers или любой из его элементов равны null.
IllegalArgumentException - если количество предоставленных строк нечетное.
С тех пор:
18

of

public static Headers of(Map<String, List<String>> headers)
Возвращает неизменяемую Headers из заданной headers с теми же именами и значениями заголовков.
Параметры:
headers - карта имен и значений заголовков
Возвращает:
неизменяемые заголовки
Исключения:
NullPointerException - если headers или любые его имена или значения равны null, или если любое значение содержит null.
С тех пор:
18

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/jdk.httpserver/com/sun/net/httpserver/Headers.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API