JAXB

위키백과, 우리 모두의 백과사전.

JAXB(Java Architecture for XML Binding)는 자바 클래스를 XML로 표현하는 자바 API이다. JAXB는 주로 2가지 기능이 있다. 자바 객체를 XML로 직렬화하는 것이고 반대로 XML에서 자바 객체로 역직렬화하는 것이다. 즉, JAXB는 메모리의 데이터를 XML 형식으로 변환하여 저장할 수 있고, 이 과정을 위해 프로그램의 각 클래스에서 XML을 읽고 저장하는 일을 구현해야 한다.

기본 자료형 바인딩[편집]

다음 표는 XML 스키마(XSD) 자료형을 JAXB의 자바 자료형과 매핑한 것을 나열한 것이다.[1]

XML 스키마 타입 자바 자료형
xsd:string java.lang.String
xsd:integer java.math.BigInteger
xsd:positiveInteger java.math.BigInteger
xsd:int int
xsd:long long
xsd:short short
xsd:decimal java.math.BigDecimal
xsd:float float
xsd:double double
xsd:boolean boolean
xsd:byte byte
xsd:QName javax.xml.namespace.QName
xsd:dateTime javax.xml.datatype.XMLGregorianCalendar
xsd:base64Binary byte[]
xsd:hexBinary byte[]
xsd:unsignedInt long
xsd:unsignedShort int
xsd:unsignedByte short
xsd:unsignedLong java.math.BigDecimal
xsd:time javax.xml.datatype.XMLGregorianCalendar
xsd:date javax.xml.datatype.XMLGregorianCalendar
xsd:g javax.xml.datatype.XMLGregorianCalendar
xsd:anySimpleType[2] java.lang.Object
xsd:anySimpleType[3] java.lang.String
xsd:duration javax.xml.datatype.Duration
xsd:NOTATION javax.xml.namespace.QName

버전 역사[편집]

JAXB API 역사
JAXB version 발표 자바 플랫폼 중요한 변화
JAXB 2.0 Java EE 5 JSR 222
JAXB 1.0 JSR 31

각주[편집]

  1. “Using JAXB Data Binding: Standard Data Type Mapping”. 
  2. for xsd:element of this type
  3. for xsd:attribute of this type

외부 링크[편집]