如何使用下面的代码解组 XML 字符串并将其映射到下面的 JAXB 对象?
JAXBContext jaxbContext = JAXBContext.newInstance(Person.class); Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); Person person = (Person) unmarshaller.unmarshal("xml string here");
@XmlRootElement(name = "Person") public class Person { @XmlElement(name = "First-Name") String firstName; @XmlElement(name = "Last-Name") String lastName; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }
要传递 XML 内容,您需要将内容包装在 a 中Reader,然后将其解组:
Reader
JAXBContext jaxbContext = JAXBContext.newInstance(Person.class); Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); StringReader reader = new StringReader("xml string here"); Person person = (Person) unmarshaller.unmarshal(reader);