Spec-Zone.ru › OpenJDK 27

Класс DatatypeFactory

java.lang.Object
javax.xml.datatype.DatatypeFactory
public abstract class DatatypeFactory extends Object
Фабрика, создающая новые javax.xml.datatype Objects, которые выполняют преобразование между XML и Objects Java.

Новый экземпляр DatatypeFactory создается с помощью метода newInstance(), который использует механизм поиска JAXP для определения класса реализации DatatypeFactory, который необходимо загрузить.

Начиная с:
1.5

Краткое описание полей

Модификатор и тип Поле Описание
static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS
Имя класса реализации по умолчанию, определенное в JSR 206: API Java(TM) для обработки XML (JAXP) 1.3.
static final String DATATYPEFACTORY_PROPERTY
Имя свойства по умолчанию, определенное в JSR 206: API Java(TM) для обработки XML (JAXP) 1.3.

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

DatatypeFactory()
Модификатор Конструктор Описание
protected
Защищенный конструктор, предотвращающий создание экземпляров вне пакета.

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

Модификатор и тип Метод Описание
static DatatypeFactory newDefaultInstance()
Создает новый экземпляр DatatypeFactory — встроенной системной реализации по умолчанию.
Duration newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
Получает новый экземпляр Duration, задавая Duration: isPositive, years, months, days, hours, minutes, seconds.
abstract Duration newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
Получает новый экземпляр Duration, задавая Duration: isPositive, years, months, days, hours, minutes, seconds.
abstract Duration newDuration(long durationInMilliSeconds)
Получает новый экземпляр Duration, задавая Duration в миллисекундах.
abstract Duration newDuration(String lexicalRepresentation)
Получает новый экземпляр Duration, задавая Duration в виде строкового представления «PnYnMnDTnHnMnS», определенного в разделе 3.2.6.1 XML Schema 1.0.
Duration newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
Создает Duration типа xdt:dayTimeDuration, используя указанные day, hour, minute и second, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.
Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
Создает Duration типа xdt:dayTimeDuration, используя указанные day, hour, minute и second, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.
Duration newDurationDayTime(long durationInMilliseconds)
Создает Duration типа xdt:dayTimeDuration, используя указанное значение в миллисекундах, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.
Duration newDurationDayTime(String lexicalRepresentation)
Создает Duration типа xdt:dayTimeDuration, разбирая его String представление «PnDTnHnMnS» согласно модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.
Duration newDurationYearMonth(boolean isPositive, int year, int month)
Создает Duration типа xdt:yearMonthDuration, используя указанные year и month, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.
Duration newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
Создает Duration типа xdt:yearMonthDuration, используя указанные year и month, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.
Duration newDurationYearMonth(long durationInMilliseconds)
Создает Duration типа xdt:yearMonthDuration, используя указанное значение в миллисекундах, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.
Duration newDurationYearMonth(String lexicalRepresentation)
Создает Duration типа xdt:yearMonthDuration, разбирая его String представление «PnYnM» согласно модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.
static DatatypeFactory newInstance()
Получает новый экземпляр DatatypeFactory.
static DatatypeFactory newInstance(String factoryClassName, ClassLoader classLoader)
Получает новый экземпляр DatatypeFactory по имени класса.
abstract XMLGregorianCalendar newXMLGregorianCalendar()
Создает новый экземпляр XMLGregorianCalendar.
XMLGregorianCalendar newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
Конструктор для пространств значений, которые экземпляру java.util.GregorianCalendar может потребоваться преобразовать в экземпляр XMLGregorianCalendar.
abstract XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)
Создает новый XMLGregorianCalendar, разбирая String как лексическое представление.
abstract XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
Конструктор, допускающий полные пространства значений, разрешенные рекомендацией W3C XML Schema 1.0 для xsd:dateTime и связанных встроенных типов данных.
abstract XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
Создает XMLGregorianCalendar из GregorianCalendar.
XMLGregorianCalendar newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
Создает представление встроенного типа данных XML Schema date или g* на Java.
XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
Создает экземпляр встроенного типа данных XML Schema time на Java.
XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
Создает экземпляр встроенного типа данных XML Schema time на Java.
XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
Создает экземпляр встроенного типа данных XML Schema time на Java.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создает и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удален в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного периода реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного периода реального времени.

Подробное описание полей

DATATYPEFACTORY_PROPERTY

public static final String DATATYPEFACTORY_PROPERTY
Имя свойства по умолчанию, определенное в JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.

Значение по умолчанию: javax.xml.datatype.DatatypeFactory.

См. также:
  • Значения константных полей

DATATYPEFACTORY_IMPLEMENTATION_CLASS

public static final String DATATYPEFACTORY_IMPLEMENTATION_CLASS
Имя класса реализации по умолчанию, определенное в JSR 206: Java(TM) API for XML Processing (JAXP) 1.3.

Реализаторы должны указывать имя подходящего класса для создания экземпляра, если ни один другой механизм определения реализации не сработал.

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

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

DatatypeFactory

protected DatatypeFactory()
Защищенный конструктор, предотвращающий создание экземпляров вне пакета.

Для создания DatatypeFactory используйте newInstance().

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

newDefaultInstance

public static DatatypeFactory newDefaultInstance()
Создает новый экземпляр DatatypeFactory встроенной реализации по умолчанию системного уровня.
Возвращает:
Новый экземпляр DatatypeFactory встроенной реализации по умолчанию системного уровня.
С версии:
9

newInstance

public static DatatypeFactory newInstance() throws DatatypeConfigurationException
Получает новый экземпляр DatatypeFactory. Этот метод использует механизм поиска JAXP, чтобы определить, какой класс реализации DatatypeFactory загрузить.
Возвращает:
Новый экземпляр DatatypeFactory
Выбрасывает:
DatatypeConfigurationException — если реализация недоступна или не может быть создана.
См. также:
  • newInstance(String factoryClassName, ClassLoader classLoader)

newInstance

public static DatatypeFactory newInstance(String factoryClassName, ClassLoader classLoader) throws DatatypeConfigurationException
Получает новый экземпляр DatatypeFactory по имени класса. Этот метод полезен, если в пути к классам имеется несколько поставщиков. Он предоставляет приложению больше возможностей управления, позволяя указать, какой поставщик следует загрузить.

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

Советы по устранению неполадок

Установка системного свойства jaxp.debug приведет к тому, что этот метод выведет множество отладочных сообщений в System.err о выполняемых действиях и местах поиска.

Если возникли проблемы, попробуйте выполнить следующее:

java -Djaxp.debug=1 YourProgram ....
Параметры:
factoryClassName — полное имя класса фабрики, предоставляющего реализацию javax.xml.datatype.DatatypeFactory.
classLoader — ClassLoader, используемый для загрузки класса фабрики. Если null, для загрузки класса фабрики используется контекстный ClassLoader текущего Thread.
Возвращает:
Новый экземпляр DatatypeFactory
Выбрасывает:
DatatypeConfigurationException — если factoryClassName равен null или класс фабрики не удается загрузить либо создать.
С версии:
1.6
См. также:
  • newInstance()

newDuration

public abstract Duration newDuration(String lexicalRepresentation)
Получает новый экземпляр Duration, задавая Duration в виде строкового представления «PnYnMnDTnHnMnS», определенного в разделе 3.2.6.1 XML Schema 1.0.

В разделе 3.2.6 «duration» части 2 XML Schema: Datatypes duration определяется следующим образом:

duration обозначает промежуток времени. Пространство значений duration представляет собой шестимерное пространство, координаты которого обозначают соответственно компоненты года, месяца, дня, часа, минуты и секунды григорианского календаря, определенные в разделе 5.5.3.2 стандарта [ISO 8601]. Эти компоненты упорядочены по значимости в порядке их появления: год, месяц, день, час, минута и секунда.

Все шесть значений задаются и доступны в созданном объекте Duration

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Параметры:
lexicalRepresentation — String представление Duration.
Возвращает:
Новый Duration, созданный путем разбора lexicalRepresentation.
Выбрасывает:
IllegalArgumentException — если lexicalRepresentation не является допустимым представлением Duration.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.
NullPointerException — если lexicalRepresentation равен null.

newDuration

public abstract Duration newDuration(long durationInMilliSeconds)
Получает новый экземпляр Duration, задавая Duration в миллисекундах.

В разделе 3.2.6 «duration» части 2 XML Schema: Datatypes duration определяется следующим образом:

duration обозначает промежуток времени. Пространство значений duration представляет собой шестимерное пространство, координаты которого обозначают соответственно компоненты года, месяца, дня, часа, минуты и секунды григорианского календаря, определенные в разделе 5.5.3.2 стандарта [ISO 8601]. Эти компоненты упорядочены по значимости в порядке их появления: год, месяц, день, час, минута и секунда.

Все шесть значений устанавливаются путем вычисления на основе указанных миллисекунд и доступны с помощью методов get созданного объекта Duration. Значения соответствуют следующим определениям:

  • ISO 8601:2000(E), раздел 5.5.3.2, альтернативный формат
  • W3C XML Schema 1.0, часть 2, приложение D, форматы даты и времени ISO 8601
  • XMLGregorianCalendar: соответствие полей типа данных даты/времени XML Schema 1.0 представлению в Java

Экземпляр начальной даты по умолчанию определяется использованием GregorianCalendar начала эпохи: например, Calendar.YEAR = 1970, Calendar.MONTH = Calendar.JANUARY, Calendar.DATE = 1 и т. д. Это важно, поскольку григорианский календарь имеет особенности: например, в високосном году в месяце Calendar.FEBRUARY другое количество дней, поэтому результат Duration.getMonths() и Duration.getDays() может зависеть от этого.

Параметры:
durationInMilliSeconds — длительность в миллисекундах, которую следует создать.
Возвращает:
Новый Duration, представляющий durationInMilliSeconds.

newDuration

public abstract Duration newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)
Получает новый экземпляр Duration, задавая Duration как isPositive, годы, месяцы, дни, часы, минуты и секунды.

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Значение null указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
years — этого Duration
months — этого Duration
days — этого Duration
hours — этого Duration
minutes — этого Duration
seconds — этого Duration
Возвращает:
Новый Duration, созданный из указанных значений.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если все поля (годы, месяцы и т. д.) равны null или любое из полей имеет отрицательное значение.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.

newDuration

public Duration newDuration(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds)
Получает новый экземпляр Duration, задавая Duration как isPositive, годы, месяцы, дни, часы, минуты и секунды.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
years — этого Duration
months — этого Duration
days — этого Duration
hours — этого Duration
minutes — этого Duration
seconds — этого Duration
Возвращает:
Новый Duration, созданный из указанных значений.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если какое-либо из полей имеет отрицательное значение.
См. также:
  • newDuration(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds)

newDurationDayTime

public Duration newDurationDayTime(String lexicalRepresentation)
Создает Duration типа xdt:dayTimeDuration, разбирая его String представление «PnDTnHnMnS», определенное в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.

Тип данных xdt:dayTimeDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты дней, часов, минут и секунд. Этот тип данных находится в пространстве имен http://www.w3.org/2003/11/xpath-datatypes.

Все четыре значения задаются и доступны в созданном объекте Duration

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Параметры:
lexicalRepresentation — лексическое представление длительности.
Возвращает:
Новый Duration, созданный с использованием указанного lexicalRepresentation.
Выбрасывает:
IllegalArgumentException — если lexicalRepresentation не является допустимым представлением Duration, выраженным только в днях и времени.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.
NullPointerException — если lexicalRepresentation равен null.

newDurationDayTime

public Duration newDurationDayTime(long durationInMilliseconds)
Создает Duration типа xdt:dayTimeDuration, используя указанные миллисекунды, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.

Тип данных xdt:dayTimeDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты дней, часов, минут и секунд. Этот тип данных находится в пространстве имен http://www.w3.org/2003/11/xpath-datatypes.

Все четыре значения вычисляются на основе указанных миллисекунд и доступны с помощью методов get созданного объекта Duration. Значения соответствуют следующим определениям:

  • ISO 8601:2000(E), раздел 5.5.3.2, альтернативный формат
  • W3C XML Schema 1.0, часть 2, приложение D, форматы даты и времени ISO 8601
  • XMLGregorianCalendar: соответствие полей типа данных даты/времени XML Schema 1.0 представлению в Java

Экземпляр начальной даты по умолчанию определяется использованием GregorianCalendar начала эпохи: например, Calendar.YEAR = 1970, Calendar.MONTH = Calendar.JANUARY, Calendar.DATE = 1 и т. д. Это важно, поскольку григорианский календарь имеет особенности: например, в високосном году в месяце Calendar.FEBRUARY другое количество дней, поэтому результат Duration.getDays() может зависеть от этого.

Все оставшиеся миллисекунды после определения дня, часа, минуты и секунды отбрасываются.

Параметры:
durationInMilliseconds — миллисекунды Duration для создания.
Возвращает:
Новый Duration, созданный с использованием указанного durationInMilliseconds.
См. также:
  • модель данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration

newDurationDayTime

public Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second)
Создает Duration типа xdt:dayTimeDuration, используя указанные day, hour, minute и second, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.

Тип данных xdt:dayTimeDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты дней, часов, минут и секунд. Этот тип данных находится в пространстве имен http://www.w3.org/2003/11/xpath-datatypes.

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Значение null указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
day — день Duration.
hour — час Duration.
minute — минута Duration.
second — секунда Duration.
Возвращает:
Новый Duration, созданный с указанными day, hour, minute и second.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если все поля (день, час и т. д.) равны null или любое из полей имеет отрицательное значение.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.

newDurationDayTime

public Duration newDurationDayTime(boolean isPositive, int day, int hour, int minute, int second)
Создает Duration типа xdt:dayTimeDuration, используя указанные day, hour, minute и second, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:dayTimeDuration.

Тип данных xdt:dayTimeDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты дней, часов, минут и секунд. Этот тип данных находится в пространстве имен http://www.w3.org/2003/11/xpath-datatypes.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
day — день Duration.
hour — час Duration.
minute — минута Duration.
second — секунда Duration.
Возвращает:
Новый Duration, созданный с указанными day, hour, minute и second.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если любое из полей (день, час и т. д.) имеет отрицательное значение.

newDurationYearMonth

public Duration newDurationYearMonth(String lexicalRepresentation)
Создает Duration типа xdt:yearMonthDuration, разбирая его String представление «PnYnM», определенное в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.

Тип данных xdt:yearMonthDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты года и месяца. Этот тип данных находится в пространстве имен XMLConstants.W3C_XPATH_DATATYPE_NS_URI.

Оба значения задаются и доступны в созданном объекте Duration

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Параметры:
lexicalRepresentation — лексическое представление длительности.
Возвращает:
Новый Duration, созданный с использованием указанного lexicalRepresentation.
Выбрасывает:
IllegalArgumentException — если lexicalRepresentation не является допустимым представлением Duration, выраженным только в годах и месяцах.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.
NullPointerException — если lexicalRepresentation равен null.

newDurationYearMonth

public Duration newDurationYearMonth(long durationInMilliseconds)
Создает Duration типа xdt:yearMonthDuration, используя указанные миллисекунды, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.

Тип данных xdt:yearMonthDuration является подтипом xs:duration, лексическое представление которого содержит только компоненты года и месяца. Этот тип данных находится в пространстве имен XMLConstants.W3C_XPATH_DATATYPE_NS_URI.

Оба значения вычисляются на основе указанных миллисекунд и доступны с помощью методов get созданного объекта Duration. Значения соответствуют следующим определениям:

  • ISO 8601:2000(E), раздел 5.5.3.2, альтернативный формат
  • W3C XML Schema 1.0, часть 2, приложение D, форматы даты и времени ISO 8601
  • XMLGregorianCalendar: соответствие полей типа данных даты/времени XML Schema 1.0 представлению в Java

Экземпляр начальной даты по умолчанию определяется использованием GregorianCalendar начала эпохи: например, Calendar.YEAR = 1970, Calendar.MONTH = Calendar.JANUARY, Calendar.DATE = 1 и т. д. Это важно, поскольку григорианский календарь имеет особенности: например, в високосном году в месяце Calendar.FEBRUARY другое количество дней, поэтому результат Duration.getMonths() может зависеть от этого.

Все оставшиеся миллисекунды после определения года и месяца отбрасываются.

Параметры:
durationInMilliseconds — миллисекунды Duration для создания.
Возвращает:
Новый Duration, созданный с использованием указанного durationInMilliseconds.

newDurationYearMonth

public Duration newDurationYearMonth(boolean isPositive, BigInteger year, BigInteger month)
Создает Duration типа xdt:yearMonthDuration, используя указанные year и month, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.

В спецификации XML Schema указано, что значения могут иметь произвольный размер. Реализации могут не поддерживать или быть не в состоянии поддерживать сколь угодно большие и/или малые значения. Если возможности реализации будут превышены, будет выброшено исключение UnsupportedOperationException с сообщением об ограничениях реализации.

Значение null указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
year — год Duration.
month — месяц Duration.
Возвращает:
Новый Duration, созданный с использованием указанных year и month.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если все поля (год, месяц) равны null или любое из полей имеет отрицательное значение.
UnsupportedOperationException — если реализация не может поддерживать запрошенные значения.

newDurationYearMonth

public Duration newDurationYearMonth(boolean isPositive, int year, int month)
Создает Duration типа xdt:yearMonthDuration, используя указанные year и month, как определено в модели данных XQuery 1.0 и XPath 2.0, xdt:yearMonthDuration.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
isPositive — задайте false, чтобы создать отрицательную длительность. Если длительность равна нулю, этот параметр игнорируется.
year — год Duration.
month — месяц Duration.
Возвращает:
Новый Duration, созданный с использованием указанных year и month.
Выбрасывает:
IllegalArgumentException — если значения не являются допустимым представлением Duration: если любое из полей (год, месяц) имеет отрицательное значение.

newXMLGregorianCalendar

public abstract XMLGregorianCalendar newXMLGregorianCalendar()
Создает новый экземпляр XMLGregorianCalendar.

Все поля типа данных даты/времени имеют значение DatatypeConstants.FIELD_UNDEFINED или null.

Возвращает:
Новый XMLGregorianCalendar, у которого все поля типа данных даты/времени имеют значение DatatypeConstants.FIELD_UNDEFINED или null.

newXMLGregorianCalendar

public abstract XMLGregorianCalendar newXMLGregorianCalendar(String lexicalRepresentation)
Создает новый XMLGregorianCalendar, разбирая String как лексическое представление.

Разбор строкового лексического представления определен в XML Schema 1.0, часть 2, раздел 3.2.[7-14].1, Лексическое представление.

Строковое представление не должно содержать начальных и конечных пробелов.

Разбор выполняется по полям, поэтому для любой лексически корректной строки x выполняется следующее:

newXMLGregorianCalendar(x).toXMLFormat().equals(x)

За исключением отмеченных несовпадений лексического/канонического представлений, перечисленных в поправках к XML Schema 1.0, раздел 3.2.7.2.

Параметры:
lexicalRepresentation — лексическое представление одного из восьми типов данных даты/времени XML Schema.
Возвращает:
XMLGregorianCalendar, созданный на основе lexicalRepresentation.
Выбрасывает:
IllegalArgumentException — если lexicalRepresentation не является допустимым XMLGregorianCalendar.
NullPointerException — если lexicalRepresentation равен null.

newXMLGregorianCalendar

public abstract XMLGregorianCalendar newXMLGregorianCalendar(GregorianCalendar cal)
Создать XMLGregorianCalendar из GregorianCalendar.
Преобразование каждого поля из GregorianCalendar в XMLGregorianCalendar
Поле java.util.GregorianCalendar Поле javax.xml.datatype.XMLGregorianCalendar
ERA == GregorianCalendar.BC ? -YEAR : YEAR XMLGregorianCalendar.setYear(int year)
MONTH + 1 XMLGregorianCalendar.setMonth(int month)
DAY_OF_MONTH XMLGregorianCalendar.setDay(int day)
HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND XMLGregorianCalendar.setTime(int hour, int minute, int second, BigDecimal fractional)
(ZONE_OFFSET + DST_OFFSET) / (60*1000)
(в минутах)
XMLGregorianCalendar.setTimezone(int offset)*

*потеря информации при преобразовании. Невозможно представить идентификатор часового пояса java.util.GregorianCalendar с летним временем в формате даты и времени XML Schema 1.0.

Чтобы вычислить поле TimeZone возвращаемого значения,

  • если this.getTimezone() != FIELD_UNDEFINED, создайте java.util.TimeZone с пользовательским идентификатором часового пояса, используя this.getTimezone().
  • иначе используйте значение часового пояса по умолчанию GregorianCalendar для узла, определённое согласно java.util.TimeZone.getDefault().
Параметры:
cal — java.util.GregorianCalendar, используемый для создания XMLGregorianCalendar
Возвращает:
XMLGregorianCalendar, созданный из java.util.GregorianCalendar
Исключения:
NullPointerException — если cal равен null.

newXMLGregorianCalendar

public abstract XMLGregorianCalendar newXMLGregorianCalendar(BigInteger year, int month, int day, int hour, int minute, int second, BigDecimal fractionalSecond, int timezone)
Конструктор, допускающий полный диапазон значений, разрешённый рекомендацией W3C XML Schema 1.0 для xsd:dateTime и связанных встроенных типов данных. Обратите внимание, что параметр year поддерживает сколь угодно большие числа, а fractionalSecond имеет бесконечную точность.

Значение null указывает, что поле не задано.

Параметры:
year — значение XMLGregorianCalendar для создания.
month — значение XMLGregorianCalendar для создания.
day — значение XMLGregorianCalendar для создания.
hour — значение XMLGregorianCalendar для создания.
minute — значение XMLGregorianCalendar для создания.
second — значение XMLGregorianCalendar для создания.
fractionalSecond — значение XMLGregorianCalendar для создания.
timezone — значение XMLGregorianCalendar для создания.
Возвращает:
XMLGregorianCalendar, созданный из указанных значений.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().

newXMLGregorianCalendar

public XMLGregorianCalendar newXMLGregorianCalendar(int year, int month, int day, int hour, int minute, int second, int millisecond, int timezone)
Конструктор для диапазонов значений, которые экземпляр java.util.GregorianCalendar должен преобразовать в экземпляр XMLGregorianCalendar.

XMLGregorianCalendar eon и fractionalSecond устанавливаются в null

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
year — значение XMLGregorianCalendar для создания.
month — значение XMLGregorianCalendar для создания.
day — значение XMLGregorianCalendar для создания.
hour — значение XMLGregorianCalendar для создания.
minute — значение XMLGregorianCalendar для создания.
second — значение XMLGregorianCalendar для создания.
millisecond — значение XMLGregorianCalendar для создания.
timezone — значение XMLGregorianCalendar для создания.
Возвращает:
XMLGregorianCalendar, созданный из указанных значений.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().

newXMLGregorianCalendarDate

public XMLGregorianCalendar newXMLGregorianCalendarDate(int year, int month, int day, int timezone)
Создать представление встроенного типа данных XML Schema date или g* в Java.

Например, экземпляр gYear можно создать, вызвав эту фабрику и установив параметры month и day в значение DatatypeConstants.FIELD_UNDEFINED.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
year — значение XMLGregorianCalendar для создания.
month — значение XMLGregorianCalendar для создания.
day — значение XMLGregorianCalendar для создания.
timezone — смещение в минутах. DatatypeConstants.FIELD_UNDEFINED указывает, что необязательное поле не задано.
Возвращает:
XMLGregorianCalendar, созданный из значений параметров.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().
См. также:
  • DatatypeConstants.FIELD_UNDEFINED

newXMLGregorianCalendarTime

public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int timezone)
Создать экземпляр встроенного типа данных XML Schema time в Java.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
hours — количество часов
minutes — количество минут
seconds — количество секунд
timezone — смещение в минутах. DatatypeConstants.FIELD_UNDEFINED указывает, что необязательное поле не задано.
Возвращает:
XMLGregorianCalendar, созданный из значений параметров.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().
См. также:
  • DatatypeConstants.FIELD_UNDEFINED

newXMLGregorianCalendarTime

public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone)
Создать экземпляр встроенного типа данных XML Schema time в Java.

Значение null указывает, что поле не задано.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
hours — количество часов
minutes — количество минут
seconds — количество секунд
fractionalSecond — значение null указывает, что это необязательное поле не задано.
timezone — смещение в минутах. DatatypeConstants.FIELD_UNDEFINED указывает, что необязательное поле не задано.
Возвращает:
XMLGregorianCalendar, созданный из значений параметров.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().
См. также:
  • DatatypeConstants.FIELD_UNDEFINED

newXMLGregorianCalendarTime

public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone)
Создать экземпляр встроенного типа данных XML Schema time в Java.

Значение DatatypeConstants.FIELD_UNDEFINED указывает, что поле не задано.

Параметры:
hours — количество часов
minutes — количество минут
seconds — количество секунд
milliseconds — количество миллисекунд
timezone — смещение в минутах. DatatypeConstants.FIELD_UNDEFINED указывает, что необязательное поле не задано.
Возвращает:
XMLGregorianCalendar, созданный из значений параметров.
Исключения:
IllegalArgumentException — если значение отдельного параметра выходит за максимальное допустимое значение поля, определённое таблицей сопоставления данных даты/времени в XMLGregorianCalendar, или если составные значения образуют недопустимый экземпляр XMLGregorianCalendar согласно XMLGregorianCalendar.isValid().
См. также:
  • DatatypeConstants.FIELD_UNDEFINED

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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