JAXB (Java Architecture for XML Binding) is an API that allows conversion between Java objects and XML documents. It includes tools for:
- Marshalling, which converts Java objects to XML
- Unmarshalling, which converts XML to Java objects
The JAXB implementation includes a schema compiler that binds an XML schema to generated Java classes. It also includes a binding runtime framework for marshalling and unmarshalling XML data using the generated classes.
The typical process involves generating classes from an XML schema, compiling the classes, unmarshalling an XML document to a Java content tree using the classes, processing the tree, then marshalling it back to XML.