javax.xml.datatype
Object
的工厂,将 XML 映射到/从 Java Object
s。
DatatypeFactory
的新实例是通过 newInstance()
方法创建的,该方法使用 JAXP 查找机制 来确定要加载的 DatatypeFactory
实现类。
- 自从:
- 1.5
-
字段摘要
字段 -
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述static DatatypeFactory
创建DatatypeFactory
内置系统默认实现 的新实例。newDuration
(boolean isPositive, int years, int months, int days, int hours, int minutes, int seconds) 获取Duration
的新实例,将Duration
指定为 isPositive、年、月、日、小时、分钟、秒。abstract Duration
newDuration
(boolean isPositive, BigInteger years, BigInteger months, BigInteger days, BigInteger hours, BigInteger minutes, BigDecimal seconds) 获取Duration
的新实例,将Duration
指定为 isPositive、年、月、日、小时、分钟、秒。abstract Duration
newDuration
(long durationInMilliSeconds) 获取Duration
的新实例,将Duration
指定为毫秒。abstract Duration
newDuration
(String lexicalRepresentation) 获取Duration
的新实例,将Duration
指定为其字符串表示形式“PnYnMnDTnHnMnS”,如 XML Schema 1.0 第 3.2.6.1 节中所定义。newDurationDayTime
(boolean isPositive, int day, int hour, int minute, int second) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration 中定义的指定day
、hour
、minute
和second
创建类型为xdt:dayTimeDuration
的Duration
。newDurationDayTime
(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration 中定义的指定day
、hour
、minute
和second
创建类型为xdt:dayTimeDuration
的Duration
。newDurationDayTime
(long durationInMilliseconds) newDurationDayTime
(String lexicalRepresentation) 通过解析其String
表示、“PnDTnHnMnS”、XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration,创建一个xdt:dayTimeDuration
类型的Duration
。newDurationYearMonth
(boolean isPositive, int year, int month) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定year
和month
创建类型为xdt:yearMonthDuration
的Duration
。newDurationYearMonth
(boolean isPositive, BigInteger year, BigInteger month) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定year
和month
创建类型为xdt:yearMonthDuration
的Duration
。newDurationYearMonth
(long durationInMilliseconds) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定毫秒创建xdt:yearMonthDuration
类型的Duration
。newDurationYearMonth
(String lexicalRepresentation) 通过解析其String
表示,“PnYnM”,XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 创建一个Duration
类型的xdt:yearMonthDuration
。static DatatypeFactory
获取DatatypeFactory
的新实例。static DatatypeFactory
newInstance
(String factoryClassName, ClassLoader classLoader) 从类名中获取DatatypeFactory
的新实例。abstract 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) 通过将 String 解析为词法表示来创建新的 XMLGregorianCalendar。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
从GregorianCalendar
创建一个XMLGregorianCalendar
。newXMLGregorianCalendarDate
(int year, int month, int day, int timezone) 创建 XML Schema 内置数据类型date
或g*
的 Java 表示。newXMLGregorianCalendarTime
(int hours, int minutes, int seconds, int timezone) 创建 XML Schema 内置数据类型time
的 Java 实例。newXMLGregorianCalendarTime
(int hours, int minutes, int seconds, int milliseconds, int timezone) 创建 XML 模式内置数据类型时间的 Java 实例。newXMLGregorianCalendarTime
(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone) 创建 XML 模式内置数据类型时间的 Java 实例。
-
字段详细信息
-
DATATYPEFACTORY_PROPERTY
JSR 206 中定义的默认属性名称:Java(TM) API for XML Processing (JAXP) 1.3。默认值为
javax.xml.datatype.DatatypeFactory
。- 参见:
-
DATATYPEFACTORY_IMPLEMENTATION_CLASS
JSR 206: Java(TM) API for XML Processing (JAXP) 1.3 中定义的默认实现类名称。如果没有其他实现解析机制成功,实现者应该指定要实例化的适当类的名称。
用户不应参考该字段;它仅用于记录工厂实现细节。
-
-
构造方法详细信息
-
DatatypeFactory
protected DatatypeFactory()受保护的构造方法,以防止在包外实例化。使用
newInstance()
创建一个DatatypeFactory
。
-
-
方法详情
-
newDefaultInstance
创建DatatypeFactory
内置系统默认实现 的新实例。- 返回:
DatatypeFactory
内置系统默认实现的新实例。- 自从:
- 9
-
newInstance
- 返回:
DatatypeFactory
的新实例- 抛出:
DatatypeConfigurationException
- 如果实现不可用或无法实例化。- 参见:
-
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
currentThread
的context classLoader加载工厂类。- 返回:
DatatypeFactory
的新实例- 抛出:
DatatypeConfigurationException
- 如果factoryClassName
是null
,或者无法加载、实例化工厂类。- 自从:
- 1.6
- 参见:
-
newDuration
获取Duration
的新实例,将Duration
指定为其字符串表示形式“PnYnMnDTnHnMnS”,如 XML Schema 1.0 第 3.2.6.1 节中所定义。XML 模式第 2 部分:数据类型,3.2.6 持续时间,将
duration
定义为:duration 表示持续时间。持续时间的值空间是一个六维空间,其中坐标分别指定 [ISO 8601] 第 5.5.3.2 节中定义的公历年、月、日、时、分和秒组件。这些组件按其出现的顺序(即年、月、日、小时、分钟和秒)按其重要性排序。
所有六个值都已设置并可从创建的
Duration
中获得XML Schema 规范声明值可以是任意大小。实现可能选择不支持或不能支持任意大和/或小的值。如果超出实施能力,将抛出
UnsupportedOperationException
并显示一条消息,指示实施限制。- 参数:
lexicalRepresentation
-String
代表Duration
。- 返回:
-
新的
Duration
通过解析lexicalRepresentation
创建。 - 抛出:
IllegalArgumentException
- 如果lexicalRepresentation
不是Duration
的有效表示。UnsupportedOperationException
- 如果实现不支持请求的值。NullPointerException
- 如果lexicalRepresentation
是null
。
-
newDuration
获取Duration
的新实例,将Duration
指定为毫秒。XML 模式第 2 部分:数据类型,3.2.6 持续时间,将
duration
定义为:duration 表示持续时间。持续时间的值空间是一个六维空间,其中坐标分别指定 [ISO 8601] 第 5.5.3.2 节中定义的公历年、月、日、时、分和秒组件。这些组件按其出现的顺序(即年、月、日、小时、分钟和秒)按其重要性排序。
所有六个值都是通过从指定的毫秒开始计算它们的值来设置的,并且可以使用创建的
Duration
的get
方法获得。这些值符合并由以下定义:- ISO 8601:2000(E) 第 5.5.3.2 节替代格式
- W3C XML Schema 1.0 第 2 部分,附录 D,ISO 8601 日期和时间格式
XMLGregorianCalendar
XML 模式 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
的有效表示:如果所有字段(年、月、...)都为空或任何字段为负。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
的有效表示:如果任何字段为负。- 参见:
-
newDurationDayTime
通过解析其String
表示、“PnDTnHnMnS”、XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration,创建一个xdt:dayTimeDuration
类型的Duration
。数据类型
xdt:dayTimeDuration
是xs:duration
的子类型,其词法表示仅包含日、时、分和秒组件。此数据类型位于命名空间http://www.w3.org/2003/11/xpath-datatypes
中。所有四个值都已设置并可从创建的
Duration
中获得XML Schema 规范声明值可以是任意大小。实现可能选择不支持或不能支持任意大和/或小的值。如果超出实施能力,将抛出
UnsupportedOperationException
并显示一条消息,指示实施限制。- 参数:
lexicalRepresentation
- 持续时间的词汇表示。- 返回:
-
使用指定的
lexicalRepresentation
创建新的Duration
。 - 抛出:
IllegalArgumentException
- 如果lexicalRepresentation
不是仅以日期和时间表示的Duration
的有效表示。UnsupportedOperationException
- 如果实现不支持请求的值。NullPointerException
- 如果lexicalRepresentation
是null
。
-
newDurationDayTime
使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration 中定义的指定毫秒创建xdt:dayTimeDuration
类型的Duration
。数据类型
xdt:dayTimeDuration
是xs:duration
的子类型,其词法表示仅包含日、时、分和秒组件。此数据类型位于命名空间http://www.w3.org/2003/11/xpath-datatypes
中。所有四个值都是通过从指定的毫秒开始计算它们的值来设置的,并且可以使用创建的
Duration
的get
方法获得。这些值符合并由以下定义:- ISO 8601:2000(E) 第 5.5.3.2 节替代格式
- W3C XML Schema 1.0 第 2 部分,附录 D,ISO 8601 日期和时间格式
XMLGregorianCalendar
XML 模式 1.0 和 Java 表示之间的日期/时间数据类型字段映射
默认开始实例由
GregorianCalendar
使用纪元开始定义:即Calendar.YEAR
= 1970、Calendar.MONTH
=Calendar.JANUARY
、Calendar.DATE
= 1 等。这很重要,因为公历有变化,例如闰年有一个月中的不同日期 =Calendar.FEBRUARY
因此Duration.getDays()
的结果可能会受到影响。确定天、小时、分钟和秒后剩余的任何毫秒都将被丢弃。
- 参数:
durationInMilliseconds
- 创建Duration
的毫秒数。- 返回:
-
使用指定的
durationInMilliseconds
创建新的Duration
。 - 参见:
-
newDurationDayTime
public Duration newDurationDayTime(boolean isPositive, BigInteger day, BigInteger hour, BigInteger minute, BigInteger second) 使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration 中定义的指定day
、hour
、minute
和second
创建类型为xdt:dayTimeDuration
的Duration
。数据类型
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
。- 返回:
-
使用指定的
day
、hour
、minute
和second
创建的新Duration
。 - 抛出:
IllegalArgumentException
- 如果值不是Duration
的有效表示:如果所有字段(天、小时、...)都为空或任何字段为负数。UnsupportedOperationException
- 如果实现不支持请求的值。
-
newDurationDayTime
使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:dayTimeDuration 中定义的指定day
、hour
、minute
和second
创建类型为xdt:dayTimeDuration
的Duration
。数据类型
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
。- 返回:
-
使用指定的
day
、hour
、minute
和second
创建的新Duration
。 - 抛出:
IllegalArgumentException
- 如果值不是Duration
的有效表示:如果任何字段(天、小时...)为负。
-
newDurationYearMonth
通过解析其String
表示,“PnYnM”,XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 创建一个Duration
类型的xdt:yearMonthDuration
。数据类型
xdt:yearMonthDuration
是xs:duration
的子类型,其词法表示仅包含年和月组件。此数据类型位于命名空间XMLConstants.W3C_XPATH_DATATYPE_NS_URI
中。这两个值都已设置并可从创建的
Duration
获得XML Schema 规范声明值可以是任意大小。实现可能选择不支持或不能支持任意大和/或小的值。如果超出实施能力,将抛出
UnsupportedOperationException
并显示一条消息,指示实施限制。- 参数:
lexicalRepresentation
- 持续时间的词汇表示。- 返回:
-
使用指定的
lexicalRepresentation
创建新的Duration
。 - 抛出:
IllegalArgumentException
- 如果lexicalRepresentation
不是仅以年和月表示的Duration
的有效表示。UnsupportedOperationException
- 如果实现不支持请求的值。NullPointerException
- 如果lexicalRepresentation
是null
。
-
newDurationYearMonth
使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定毫秒创建xdt:yearMonthDuration
类型的Duration
。数据类型
xdt:yearMonthDuration
是xs:duration
的子类型,其词法表示仅包含年和月组件。此数据类型位于命名空间XMLConstants.W3C_XPATH_DATATYPE_NS_URI
中。这两个值都是通过从指定的毫秒计算它们的值来设置的,并且可以使用创建的
Duration
的get
方法获得。这些值符合并由以下定义:- ISO 8601:2000(E) 第 5.5.3.2 节替代格式
- W3C XML Schema 1.0 第 2 部分,附录 D,ISO 8601 日期和时间格式
XMLGregorianCalendar
XML 模式 1.0 和 Java 表示之间的日期/时间数据类型字段映射
默认开始实例由
GregorianCalendar
使用纪元开始定义:即Calendar.YEAR
= 1970、Calendar.MONTH
=Calendar.JANUARY
、Calendar.DATE
= 1 等。这很重要,因为公历有变化,例如闰年有一个月中的不同日期 =Calendar.FEBRUARY
所以Duration.getMonths()
的结果会受到影响。确定年份和月份后剩余的任何毫秒数都将被丢弃。
- 参数:
durationInMilliseconds
- 创建Duration
的毫秒数。- 返回:
-
使用指定的
durationInMilliseconds
创建新的Duration
。
-
newDurationYearMonth
使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定year
和month
创建类型为xdt:yearMonthDuration
的Duration
。XML Schema 规范声明值可以是任意大小。实现可能选择不支持或不能支持任意大和/或小的值。如果超出实施能力,将抛出
UnsupportedOperationException
并显示一条消息,指示实施限制。null
值表示该字段未设置。- 参数:
isPositive
- 设置为false
以创建负持续时间。当持续时间的长度为零时,该参数将被忽略。year
-Duration
年。month
-Duration
月份。- 返回:
-
使用指定的
year
和month
创建新的Duration
。 - 抛出:
IllegalArgumentException
- 如果值不是Duration
的有效表示:如果所有字段(年、月)都为空或任何字段为负。UnsupportedOperationException
- 如果实现不支持请求的值。
-
newDurationYearMonth
使用 XQuery 1.0 和 XPath 2.0 数据模型, xdt:yearMonthDuration 中定义的指定year
和month
创建类型为xdt:yearMonthDuration
的Duration
。DatatypeConstants.FIELD_UNDEFINED
值表示该字段未设置。- 参数:
isPositive
- 设置为false
以创建负持续时间。当持续时间的长度为零时,该参数将被忽略。year
-Duration
年。month
-Duration
月份。- 返回:
-
使用指定的
year
和month
创建新的Duration
。 - 抛出:
IllegalArgumentException
- 如果值不是Duration
的有效表示:如果任何字段(年、月)为负。
-
newXMLGregorianCalendar
创建XMLGregorianCalendar
的新实例。所有日期/时间数据类型字段设置为
DatatypeConstants.FIELD_UNDEFINED
或空值。- 返回:
-
新的
XMLGregorianCalendar
,所有日期/时间数据类型字段都设置为DatatypeConstants.FIELD_UNDEFINED
或 null。
-
newXMLGregorianCalendar
通过将 String 解析为词法表示来创建新的 XMLGregorianCalendar。解析词法字符串表示在XML Schema 1.0 第 2 部分,第 3.2.[7-14].1 节,Lexical Representation。中定义
字符串表示可能没有任何前导和尾随空格。
解析是逐个字段进行的,因此以下内容适用于任何词法正确的字符串 x:
newXMLGregorianCalendar(x).toXMLFormat().equals(x)
除了 XML Schema 1.0 勘误表,第 3.2.7.2 节 中列出的值得注意的词汇/规范表示不匹配。
- 参数:
lexicalRepresentation
- 八种 XML 模式日期/时间数据类型之一的词汇表示。- 返回:
XMLGregorianCalendar
从lexicalRepresentation
创建。- 抛出:
IllegalArgumentException
- 如果lexicalRepresentation
不是有效的XMLGregorianCalendar
。NullPointerException
- 如果lexicalRepresentation
是null
。
-
newXMLGregorianCalendar
从GregorianCalendar
创建一个XMLGregorianCalendar
。从 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)
(in minutes)XMLGregorianCalendar.setTimezone(int offset)
**转换信息丢失。无法在 XML 模式 1.0 日期/时间数据类型表示中表示
java.util.GregorianCalendar
夏令时时区 ID。要计算返回值的
TimeZone
字段,- 当
this.getTimezone() != FIELD_UNDEFINED
时,使用this.getTimezone()
创建一个带有自定义时区 ID 的java.util.TimeZone
。 - 否则使用
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.isValid()
确定的无效XMLGregorianCalendar
实例。
-
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.isValid()
确定的无效XMLGregorianCalendar
实例。
-
newXMLGregorianCalendarDate
创建 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.isValid()
确定的无效XMLGregorianCalendar
实例。- 参见:
-
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.isValid()
确定的无效XMLGregorianCalendar
实例。- 参见:
-
newXMLGregorianCalendarTime
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, BigDecimal fractionalSecond, int timezone) 创建 XML 模式内置数据类型时间的 Java 实例。null
值表示该字段未设置。DatatypeConstants.FIELD_UNDEFINED
值表示该字段未设置。- 参数:
hours
- 小时数minutes
- 分钟数seconds
- 秒数fractionalSecond
-null
的值表示未设置此可选字段。timezone
- 以分钟为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
表示未设置可选字段。- 返回:
XMLGregorianCalendar
从参数值创建。- 抛出:
IllegalArgumentException
- 如果任何单个参数的值超出由XMLGregorianCalendar
中的日期/时间数据映射表确定的字段的最大值约束,或者如果复合值构成由XMLGregorianCalendar.isValid()
确定的无效XMLGregorianCalendar
实例。- 参见:
-
newXMLGregorianCalendarTime
public XMLGregorianCalendar newXMLGregorianCalendarTime(int hours, int minutes, int seconds, int milliseconds, int timezone) 创建 XML 模式内置数据类型时间的 Java 实例。DatatypeConstants.FIELD_UNDEFINED
值表示该字段未设置。- 参数:
hours
- 小时数minutes
- 分钟数seconds
- 秒数milliseconds
- 毫秒数timezone
- 以分钟为单位的偏移量。DatatypeConstants.FIELD_UNDEFINED
表示未设置可选字段。- 返回:
XMLGregorianCalendar
从参数值创建。- 抛出:
IllegalArgumentException
- 如果任何单个参数的值超出由XMLGregorianCalendar
中的日期/时间数据映射表确定的字段的最大值约束,或者如果复合值构成由XMLGregorianCalendar.isValid()
确定的无效XMLGregorianCalendar
实例。- 参见:
-