Parsing XML in java (javax.xml.bind.annotation)



我想把这个xml文件解析成java类:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MESSAGE>Sample of FreeText
<DAY>
...........
</DAY>
</MESSAGE>

使用 javax.xml.bind.annotation,我制作了这个转换后的类:

@XmlRootElement( name  = "MESSAGE" )
@XmlAccessorType(XmlAccessType.FIELD)
public class ReceivedInfo implements Serializable{
@XmlElement( name = "DAY" )
private List<ReceivedBaseDayInfo> diaList;

在转换它的类中使用:

public static Object transformXMLStringToJava(String xmlString, Class<?> baseClass) throws Exception
{
StringReader sr = new StringReader(xmlString);
JAXBContext jaxbContext = JAXBContext.newInstance(baseClass);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
return unmarshaller.unmarshal(sr);
}

除非解析"自由文本示例"文本,否则一切正常。 应该如何定义这个要解析的自由文本 int java 类? 问候!

最后,我已经修复了添加此属性的问题:

@XmlMixed
private List<String >  freeText;
@XmlElement( name = "DAY" )
private List<ReceivedBaseDayInfo> diaList;

相关内容

最新更新