Skip to content

Instantly share code, notes, and snippets.

@pavelshackih
Last active December 21, 2015 12:19
Show Gist options
  • Save pavelshackih/6305390 to your computer and use it in GitHub Desktop.
Save pavelshackih/6305390 to your computer and use it in GitHub Desktop.
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import java.util.List;
@JacksonXmlRootElement(localName = "doc")
@XmlAccessorType(XmlAccessType.FIELD)
public class Certificate {
@JacksonXmlProperty(localName = "r")
private R r;
public R getR() {
return r;
}
public void setR(R r) {
this.r = r;
}
public static class R {
@JacksonXmlProperty(localName = "ATT_SEARCH")
@JacksonXmlElementWrapper(useWrapping = false)
private List<AttSearch> attSearch;
public List<AttSearch> getAttSearch() {
return attSearch;
}
public void setAttSearch(List<AttSearch> attSearch) {
this.attSearch = attSearch;
}
@JacksonXmlProperty(isAttribute = true, localName = "key")
private String key;
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public static class AttSearch {
@JacksonXmlProperty(isAttribute = true, localName = "DM")
private String dm;
@JacksonXmlProperty(isAttribute = true, localName = "DS")
private String ds;
@JacksonXmlProperty(isAttribute = true, localName = "DocType")
private String docType;
public String getDm() {
return dm;
}
public void setDm(String dm) {
this.dm = dm;
}
public String getDs() {
return ds;
}
public void setDs(String ds) {
this.ds = ds;
}
public String getDocType() {
return docType;
}
public void setDocType(String docType) {
this.docType = docType;
}
}
}
}
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
public class JackTest {
public static void main(String[] args) throws Exception {
String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> <doc> <r key=\"0\"> <ATT_SEARCH DM=\"dm1\" DS=\"ds1\" DocType=\"1\"/> <ATT_SEARCH DM=\"dm2\" DS=\"ds2\" DocType=\"2\"/> </r> </doc>";
XmlMapper mapper = new XmlMapper();
Certificate c = mapper.readValue(xmlString, Certificate.class);
System.out.println(c);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment