2016-07-25 281 views
-1

我想使用freemarker模板将xml字符串(例如[email protected])转换为java对象(例如具有与xml字符串相同的属性的Test.java)。 任何人都可以帮助我吗?使用Freemarker模板将xml字符串转换为java对象

+0

你到目前为止尝试过什么?你的问题是否真的与Freemarker相关,还是与Java相关? –

+0

其实我已经使用freemarker将对象转换为xml,但现在我想要它反向,所以这就是为什么我需要使用freemarker。也浏览了文档,但没有发现任何相关的内容。 –

+0

得到了解决方案。首先从xml字符串获取InputSource,然后解析它并获取NodeModel。然后获取NodeList。最后,遍历NodeList并获取nodeName和textContent –

回答

0

使用JAXB在Java中使用XML。

public static Test deserializeXMLString(String xmlString) 
    JAXBContext jaxbContext = JAXBContext.newInstance(Test.class); 
    Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); 
    StringReader reader = new StringReader(xmlString); 
    Test t = (Test)unmarshaller.unmarshal(reader); 
    return t; 
}