XMLGregorianCalendar

XMLGregorianCalendar (XML 그레고리안 달력)

W3C XML Schema 1.0의 date/time 데이터타입(dateTime, date, time, gYear 등)을 표현하는 추상 클래스예요.

출처: Java API Reference

본문

public abstract class XMLGregorianCalendar
    extends Object
    implements Cloneable

XMLGregorianCalendar는 W3C XML Schema 1.0의 날짜·시간 데이터타입을 표현해요. DATETIME, TIME, DATE, GYEARMONTH, GMONTHDAY, GYEAR, GMONTH, GDAY 같은 데이터타입을 다룰 수 있어요.

각 필드는 해당 데이터타입의 값 범위 제약을 따라요. 예를 들어 YEAR는 1부터 2^31-1까지, MONTH는 112, DAY는 131, TIMEZONE은 -14시간~+14시간(분 단위) 범위예요. getMillisecond()는 getFractionalSecond()의 밀리초 정밀도 편의 값이에요.

표에 나열된 모든 최대 값 공간 제약은 팩토리 메서드(DatatypeFactory), setter 메서드, parse 메서드에서 검사해요. 매개변수 값이 범위를 벗어나거나 6월 31일 같은 잘못된 복합 값이면 IllegalArgumentException을 던져요.

이 클래스는 날짜·시간 필드에 대한 접근자/변경자, toString()·DatatypeFactory.newXMLGregorianCalendar(String)을 통한 리터럴 표현 변환, toGregorianCalendar()를 통한 GregorianCalendar 변환, compare(XMLGregorianCalendar) 비교, 그리고 Duration 인스턴스를 더하는 연산을 지원해요.

equals(Object)는 compare(XMLGregorianCalendar)와 상대적으로 정의되어 있어요. int-반환 접근자(getYear() 등)와 BIGDECIMAL-반환 접근자(getEonAndYear() 등)를 함께 제공해요.

더 알아보기

Java 공식 API