Описание тега jaxb
Архитектура Java для привязки XML - это стандарт Java для работы с XML как объектами предметной области. Он обеспечивает простой механизм сопоставления классов Java с представлениями XML.
Архитектура Java для привязки XML (JAXB) - это стандарт Java ( JSR-222) для работы с xml как объектами домена. Он предоставляет простой в использовании механизм для сопоставления классов Java с представлениями XML. Реализация включена как часть Java SE 6 API. Доступно несколько реализаций, включая Metro JAXB (эталонная реализация), EclipseLink MOXy и JaxMe ( устарело).
JAXB и Java EE
JAXB - это стандартный связывающий уровень для следующих спецификаций:
- Java API для веб-служб на основе XML (JAX-WS)
- API Java для веб-служб RESTful (JAX-RS)
Джон Доу говорит пример " Hello World "
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Marshaller;
import javax.xml.bind.Unmarshaller;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.StringReader;
public class JohnDoeSaysHello {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance(Person.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
String xml = "<person><name>John Doe</name></person>";
Person person = (Person) unmarshaller.unmarshal(new StringReader(xml));
System.out.println("I'm the person, "
+ person.getName()
+ ", unmarshalled from XML using a StringReader, saying, \"Hello World!\"");
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.marshal(person, System.out);
}
@XmlRootElement
public static class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
Документация
- Руководство пользователя JAXB
- Oracle Introduction to JAXB tutorial.