将XMLString转POJO导致没有属性?

Converting XML String to POJO leads to no attributes?

我的函数接收 XML 但它被格式化为字符串,我试图将此字符串转换为 XML 并将 XML 转换为 POJO。该函数只会接收一个对象。

这是我得到的:

String xmlString = "<object><attributeOne>test</attributeOne><attributeTwo>test2</attributeTwo></object>";

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();

Document xmlObject = builder.parse(new InputSource(new StringReader(xmlString)));

// print root element name
System.out.println("Root element: " + xmlObject.getDocumentElement().getNodeName());

int numRootElements = xmlObject.getDocumentElement().getAttributes().getLength();
System.out.println("Number of attributes: " + String.valueOf(numRootElements));

// log root element attributes:
System.out.println("Root element attributes: ");
for (int i = 0; i < xmlObject.getDocumentElement().getAttributes().getLength(); i++) {               
    System.out.println(xmlObject.getDocumentElement().getAttributes().item(i).getNodeName() 
    + ": "
    + xmlObject.getDocumentElement().getAttributes().item(i).getNodeValue());
}

// Output:
// Root element: object
// Number of attributes: 0
// Root element attributes: 

我想我没有正确读取对象的值,但我很困惑为什么会出现这种情况,而 here 给出的答案与我自己的答案没有什么不同。直到现在才与 XML 合作过

我能够通过使用 .getNodeValue() 而不是 .getAttributes()

来纠正此行为