Parse XML TO JAVA POJO in efficient way

前端 未结 4 1054
半阙折子戏
半阙折子戏 2020-12-03 21:57

How to parse and create java pojo for below xml in an efficient way? Kindly suggest any efficient parser.

XML format is



        
4条回答
  •  [愿得一人]
    2020-12-03 22:14

    For those looking for JAXB code to convert xml to java object:

    //Convert xml to String first
    Element partyLoaderRequest; // your xml data
    String xmlString = new XMLOutputter().outputString(partyLoaderRequest);   
    InputStream is = new ByteArrayInputStream(xmlString.getBytes());
    DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
    Document document = docBuilder.parse(is);
    org.w3c.dom.Element varElement = document.getDocumentElement();
    JAXBContext context = JAXBContext.newInstance(Person.class);
    Unmarshaller unmarshaller = context.createUnmarshaller();
    JAXBElement loader = unmarshaller.unmarshal(varElement, Person.class);
    Person inputFromXml = loader.getValue();
    

    whereas Person has proper XML annotations:

    @XmlRootElement(name="Person")
    public class CimbWlAdminUserAmendInput {
        @XmlElement(name="companyName",required=true,nillable=false) 
        private String companyName;
        ...
        //setters getters
        @XmlTransient
        public String getCompanyName() {
            return companyName;
        }
    
        public void setCompanyName(String companyName) {
            this.companyName = companyName;
        }
    }
    

提交回复
热议问题